python - 指定会话请求的设备宽度
问题描述
执行 session.post 时如何指定设备宽度?代码示例:
import requests
global session
session = requests.Session()
payload = {
"login_email" : "helloyes",
}
url = "https://www.twitter.com/"
result = session.post(url, data=payload, headers=dict(Referer=url))
plain_text = result.content
content = plain_text.decode()
此代码呈现网站的移动设备视图。我需要桌面视图,请问怎么办?
解决方案
在请求的标头中设置User-Agent
与移动浏览器对应的:
user_agent = "Mozilla/5.0 (Linux; U; Android 4.0.3; ko-kr; LG-L160L Build/IML74K) AppleWebkit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30"
headers_dict = {
"Referer": url,
"User-Agent": user_agent
}
result = session.post(url, data=payload, headers=headers_dict)
您可以在useragentstring.com上找到移动用户代理列表。然后,您可以选择与具有您特定宽度的某些设备相对应的用户代理。
推荐阅读
- xml - xml 中的非法字符“0xa0”
- r - 如何从 R 中的单个记录中绘制运行累积总计?
- angular - 如何在 PrimeNG 自动完成文本框的“onBlur”事件中将值传递给我的组件?
- rxjs - 缓存来自 BehaviorSubject 的管道结果
- php - 在 PHP 中使用 simplexml_load_string 后如何检索 XML 的第一个节点?
- android - 如何使用 RXJava 多次调用方法 - 我使用哪个运算符?
- javascript - 从 php 传递到 javascript 有什么问题
- scala - 带有类型参数的 Scala 列表
- bash - Bash if/else 语句未正确管道输出
- swift - 滚动时隐藏 UITableView 复选标记