java中的接口是类吗
335
2022-08-31
利用python爬虫(part15)--cookie模拟登陆(python爬虫获取cookie)
学习笔记
文章目录
cookie模拟登陆
获取cookie爬取我的简介
cookie模拟登陆
有的时候,我们想要抓取一个网站,但是需要先登录才能访问它,如果不输入用户名和密码,我们就会一直停留在登录页面。
那我们该如何抓取呢?
这时,我们可以用cookie模拟登录。
获取cookie
数据包中的Request Headers信息:
accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8accept-encoding:gzip, deflate, braccept-language:zh-CN,zh;q=0.9cookie:Hm_lvt_91a4e950402ecbaeb38bd149234eb7cc=1588057449; Hm_lpvt_91a4e950402ecbaeb38bd149234eb7cc=1588059525; MSESSID=ss0bkgssd754dmosq13phbh7h6; token=5ea7ddff051cbec5bd6d1fd4%7Caef97ce98517a012%7C1588059647%7Cb46af3e345721caa; SERVERID=832fef4323c87b883d6becf9932943f1|1588059647|1588057447referer:(Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36
爬取我的简介
现在,我想获取我的主页中的简介:
我创建一个py文件,专门放我的请求头信息。
my_headers.py
headers = {"accept":"image/webp,image/apng,image/*,*/*;q=0.8","accept-language":"zh-CN,zh;q=0.9","cookie":"Hm_lvt_91a4e950402ecbaeb38bd149234eb7cc=1588057449; Hm_lpvt_91a4e950402ecbaeb38bd149234eb7cc=1588059525; MSESSID=ss0bkgssd754dmosq13phbh7h6; token=5ea7ddff051cbec5bd6d1fd4%7Caef97ce98517a012%7C1588059647%7Cb46af3e345721caa; SERVERID=832fef4323c87b883d6becf9932943f1|1588059647|1588057447","referer":"(Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"}
python爬虫代码:
# -*- coding: utf-8 -*-import requestsimport my_headers from lxml import etreeurl = '= '//*[@id="t_u_n_a"]/text()'html = requests.get(url = url, headers = my_headers.headers).content.decode('utf-8')parse_html = etree.HTML(html)profit = parse_html.xpath(xpath)print('简介:', profit)
输出:
简介: ['\n 我是山羊的简介 ']
成功GET!
后记:如果我在浏览器上退出猫耳FM的登录了,程序即使带有cookie也会无法访问到我们要的HTML页面。如果我们保持浏览器的登录状态,但是headers中不写cookie,也无法获取到我们想要爬取的简介。
总之,就是出现了上面两种状况,我现在有点迷。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~