爬虫 1 request模块的运用

作者: gavin 分类: Python,爬虫技术 发布时间: 2020-10-20 17:46

1、爬虫获取文本内容

import requests
res=requests.get('https://lvnvl.cn')

#print(res.status_code)
res.encoding = 'utf-8'
novle = res.text


print(novle[:])

2、爬虫获取图片内容(二进制)

import requests 

res = requests.get('https://res.pandateacher.com/2018-12-18-10-43-07.png') 
novle = res.content
print(novle)
# 打印变量res的数据类型
print(type(res))

3、使用try做筛选,使用offset变量做满足数量后跳出

import requests
# 引用csv
import csv

# 调用open()函数打开csv文件,传入参数:文件名“articles.csv”、写入模式“w”、newline=''。

# 用csv.writer()函数创建一个writer对象。

# 创建一个列表

# 调用writer对象的writerow()方法,可以在csv文件里写入一行文字 “标题”和“链接”和"摘要"。

# 使用headers是一种习惯
headers = {
    'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'}
url = 'https://www.toutiao.com/api/search/content/'
# 设置offset的起始值为10
offset = 10

while True:
    # 封装参数
    params = {'aid': '24', 'app_name': 'web_search', 'offset': '20', 'format': 'json', 'keyword': '特朗普:',
              'autoload': 'true', 'count': '20', 'en_qc': '1',
              'cur_tab': '1', 'from': 'search_tab', 'pd': 'synthesis', 'timestamp': '1597805260196',
              '_signature': 'dtEYPAAgEBCwhqGxqNBu4nbQWSAACnwFpTASKTMh-7VzDcR4ykquvMXl2F.pPxwChz4GKYLO1cUznXPfka5UP0CD1lz0TY6sU7IVp5.oVpcCMmgAAzVbhyv36kQ0P75E0VA'}
    # 发送请求,并把响应内容赋值到变量res里面
    res = requests.get(url, headers=headers, params=params)

    articles = res.json()
    # 定位数据
    data = articles['data']
    print(articles)
    for i in data:
        # 把目标数据封装成一个列表
        try:
            list1 = [i['title'], i["article_url"]]
            print(list1)
            # 调用writerow()方法,把列表list1的内容写入

        # 在while循环内部,offset的值每次增加20
        except:
            pass
    offset = offset + 20
    if offset > 70:
        break

# 写入完成后,关闭文件就大功告成

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注