1.1指定url
通过检查网页的代码找到网址,需要注意以下几点,最上面的网址的响应是不是我想要的内容,如果不是,那么这种网页是不是ajax请求,是的话通过检查network来找到真正的url,尽量保持url精简化,列如url可能会携带参数,通过测试来判断这些参数是否一定要保留。
1.2进行UA伪装
大部分网页都会对申请网页的使用者进行检测,需要将user-Agent的内容一同传递给网页,才不会被拦截。user-agent不能进行任何改动,大小写,加空格都不行,代码会报错。
以字典形式传入
例子:
headers = {__ ‘user-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36’
}
1.3参数传递
有些网页的打开需要传入具体的参数,可以看network的最后一项来判断是否需要传入参数,这个参数也有可能是打开下一个网址的参数,看不懂就看你那个爬虫启蒙教学视频,药监局那部分。https://www.bilibili.com/video/BV18C4y1a7uk?p=13
以字典形式传入
1.4开始请求数据,并且保存下来
先是判断是post还是get请求,根据不同的请求,调用不同的requests方法。注意的是post参数是data,get参数是paramas,还需要注意网页返回的页面数据类型是json还是text。这部分看网页network.根据不同的类型选择不同的格式进行持久化存储。
json:例子
response = requests.get(_url=url, params=params, headers=headers)list_data = response.json()fp = open(‘./douban.json’, ‘w’, encoding=’utf-8’)json.dump(list_data, fp=fp, ensure_ascii=False)_
text:例子
response=requests.get(_url=url)_text=response.text
print(_text)with open(‘./sougou.html’,’w’,encoding=’utf-8’)_as fp:
fp.write(_text)_
_
