fetch()如何读取请求中的`user-agent`?
💡
原文中文,约1400字,阅读约需4分钟。
📝
内容提要
文章讨论了如何在使用fetch()时读取请求中的'user-agent'。作者通过创建一个Python FastAPI服务器来打印请求的headers,验证了'user-agent'的伪装效果,并最终解决了反爬虫问题。
🎯
关键要点
-
作者使用fetch()采集对方网站的HTML代码,但遇到反爬虫屏蔽问题。
-
为了伪装'user-agent',作者在请求中添加了headers。
-
直接在fetch的response中无法获得'user-agent',因此搭建了一个Python FastAPI服务器来打印请求的headers。
-
通过FastAPI服务器,成功验证了'user-agent'的伪装效果。
❓
延伸问答
如何在fetch()中伪装'user-agent'?
可以在fetch()请求中添加headers,设置'user-agent'来伪装。
为什么直接在fetch的response中无法获取'user-agent'?
因为fetch的response中不包含'user-agent'属性,需要在请求中查看。
如何使用Python FastAPI打印请求的headers?
可以创建一个FastAPI服务器,并在请求处理函数中打印request.headers。
作者遇到了什么问题导致无法访问某些网站?
作者遇到了反爬虫屏蔽问题,导致无法访问目标网站。
如何验证'user-agent'的伪装效果?
通过搭建FastAPI服务器并打印请求的headers,可以验证'user-agent'是否成功伪装。
fetch()的基本使用示例是什么?
fetch(url).then(res => res.text()).catch(e => console.error(`错误: ${e.message}`));
➡️