|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import requests # 导入网络请求模块
from lxml import etree # 导入lxml模块
cookies = '此处填写登录后网页中的cookie信息'
headers = {'Host': 'www.douban.com',
'Referer': 'https://www.hao123.com/', 这段网址是如何获取的
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) '
'AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/72.0.3626.121 Safari/537.36'}
# 创建RequestsCookieJar对象,用于设置cookies信息
cookies_jar = requests.cookies.RequestsCookieJar()
for cookie in cookies.split(';'):
key, value = cookie.split('=', 1)
cookies_jar.set(key, value) # 将cookies保存RequestsCookieJar当中
# 发送网络请求
response = requests.get('https://www.douban.com/',
headers=headers, cookies=cookies_jar)
if response.status_code == 200: # 请求成功时
html = etree.HTML(response.text) # 解析html代码
# 获取用户名
name = html.xpath('//*[@id="db-global-nav"]/div/div[1]/ul/li[2]/a/span[1]/text()') 还有这里的('//*[@id="db-global-nav"]/div/div[1]/ul/li[2]/a/span[1]/text()')这部分是如何获取的
print(name[0]) # 打印用户名
各位老师如果要通过谷歌浏览器找到这两个地方的数据如何操作。谢谢了
浏览器f12进入开发者模式,点网络,然后操作你想跟踪的过程,比如跟踪点击豆瓣网页的过程,之后就会有很多交互,点击你想看的消息的,就会出现header,看就行了。
另外referer和host不一致,一般是出现了跳转,或者主网页加载资源网页。你的代码看起来是跳转。
requests虽然可以模拟header,但header的字段不能随便写。要根据实际跟踪情况而定。
|
|