py爬虫姿势

Posted mo-zixuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了py爬虫姿势相关的知识,希望对你有一定的参考价值。

基础包括

head{}字典 存取要传入的包头文件 列如可以认为是通用数据头具体的数据头应抓包获得

headers = {
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:39.0) Gecko/20100101 Firefox/39.0,
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,
Accept-Language: en-US,en;q=0.5,
Accept-Encoding: gzip, deflate,
Connection: keep-alive}

 

模拟登陆

该数据是视觉中国进行模拟登陆

先在视觉中国输入错误的账号密码获取到一个发送值可以调用浏览器页面的检查功能发现
获取值为{‘username‘: "*****", ‘password‘: "*******", ‘captcha‘: "", ‘lgt‘: "0", ‘token‘: ""}

命名为date

使用 post()函数传入登陆地址,实际账号密码,和头数据。

编写函数测试是否返回了cookies如果没有返回值就进行抓包找到实际发送值并对值进行提取

详见https://blog.csdn.net/churximi/article/details/50917322 我是从这里学习的

def login():
s = requests.session()
loginURL = "https://www.vcg.com/ajax/login/submit" # POST发送到的网址
login = s.post(loginURL, data = date, headers = headers) # 发送登录信息,返回响应信息(包含cookie)
cookies = login.cookies
return cookies

 

获取网页

get()函数获取网址,传入url or urls ,heasders ,超时时间  html的值是网页的

table获取的是html里获取的相对应的标签内部的值,如果无对应会返回None并且find_all()会提示错误

html=requests.get(https://18moe.com/category/game,headers=headers,timeout=5).text
table
=BeautifulSoup(html,lxml).find(select,{class,poi-pager__item_middle_select poi-form__control})

 

使用代理

暂未使用等待补充

 

以上是关于py爬虫姿势的主要内容,如果未能解决你的问题,请参考以下文章

scrapy运行姿势scrapy.cmdline.execute

开发函数计算的正确姿势 —— 爬虫

开发函数计算的正确姿势 —— 爬虫

开发函数计算的正确姿势 —— 爬虫

Python爬虫之使用celery加速爬虫

scrapy按顺序启动多个爬虫代码片段(python3)