php中文网

如何从 Response.text 中获取正确内容,而不是网页源代码?

php中文网

如何从 response 中获取正确内容,而不是网页源代码?

尽管使用 360 开发人员工具可以捕获网页元素和网络响应,但需要特别注意如何从响应中提取正确的内容。

问题:response.text 返回网页源代码

使用代码:

import requests

url = ""
headers = {"user-agent": "mozilla/5.0 ..."}

response = requests.get(url, headers=headers)
print(response.text)

结果可能与预期不同,即响应文本包含网页源代码,而不是预期的特定数据。

原因:请求模拟不准确

问题根源在于请求模拟的不完整或不准确。requests 库默认情况下模拟的是浏览器发送的简单请求。然而,某些网站可能使用复杂的请求头、cookies 或其他参数。

解决方案:准确模拟请求

为了获得正确的响应内容,需要准确模拟网站发送的 requests。可以检查网络请求并在代码中包含必要的参数:

# 检查响应头
print(response.headers)

# 如需设置 cookie,请使用
response = requests.get(url, headers=headers, cookies={"key": "value"})

# 如需指定 HTTP 方法,请使用
response = requests.request("POST", url, headers=headers)

完成这些步骤后,response.text 应该返回预期的内容,而不是网页源代码。

以上就是如何从 Response.text 中获取正确内容,而不是网页源代码?的详细内容,更多请关注php中文网其它相关文章!