首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Scrapy referer未返回可读的url

Scrapy是一个基于Python的开源网络爬虫框架,用于抓取和提取网页数据。referer是HTTP协议中的一个头部字段,用于指示请求来源,即前一个URL地址。在Scrapy中,referer未返回可读的URL表示referer头部字段的值不可读。

具体而言,当使用Scrapy发送HTTP请求时,可以设置referer字段来指定请求的来源。referer字段的值通常为前一个页面的URL,用于告知服务器当前请求是从哪个页面链接过来的。然而,有时服务器返回的referer字段值可能是加密或无效的,无法直接读取和理解。

这种情况下,需要考虑以下解决方案:

  1. 检查请求的referer字段是否正确设置,确保在发送请求时指定了正确的referer值。
  2. 使用Scrapy的中间件对请求进行处理,自定义referer的生成规则,以确保referer字段返回可读的URL。可以通过解析响应的HTML页面或使用其他爬虫相关的数据提取方法来生成referer字段的值。
  3. 通过检查网络流量,使用网络抓包工具(例如Wireshark)来查看实际请求和返回的HTTP头部字段,确定服务器返回的referer字段值是否可读。如果服务器确实返回了无效的referer字段,可能需要与网站管理员或开发人员联系以解决问题。

推荐腾讯云相关产品:由于要求不能提及具体品牌商,这里给出一些通用的建议:

  • 腾讯云的云服务器(CVM):提供弹性、可扩展的虚拟服务器实例,可用于搭建爬虫系统和部署Scrapy框架。
  • 腾讯云对象存储(COS):提供海量、安全、低成本的对象存储服务,可用于存储和管理爬取的数据。
  • 腾讯云云数据库(CDB):提供稳定可靠的关系型数据库服务,适用于存储和查询爬取的数据。
  • 腾讯云内容分发网络(CDN):提供全球分布式加速服务,可加速网站内容的传输,提高爬虫的访问效率。 请注意,在实际应用中,根据具体需求和情况,可能需要结合其他腾讯云产品和服务,以构建完整的云计算解决方案。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

scrapy爬虫出现Forbidden by robots.txt[通俗易懂]

先说结论,关闭scrapy自带的ROBOTSTXT_OBEY功能,在setting找到这个变量,设置为False即可解决。 使用scrapy爬取淘宝页面的时候,在提交http请求时出现debug信息Forbidden by robots.txt,看来是请求被拒绝了。开始因为是淘宝页面有什么保密机制,防止爬虫来抓取页面,于是在spider中填入各种header信息,伪装成浏览器,结果还是不行。。。用chrome抓包看了半天感觉没有影响简单页面抓取的机制(其他保密机制应该还是有的,打开一个页面时,向不同服务器递交了很多请求,还设定了一些不知道干啥的cookies),最后用urllib伪造请求发现页面都能抓取回来。于是上网查了一下robot.txt是什么,发现原来有个robot协议,终于恍然大悟: 我们观察scrapy抓包时的输出就能发现,在请求我们设定的url之前,它会先向服务器根目录请求一个txt文件:

01

走过路过不容错过,Python爬虫面试总结

Selenium 是一个Web 的自动化测试工具,可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。但是我们有时候需要让它内嵌在代码中运行,所以我们可以用一个叫 PhantomJS 的工具代替真实的浏览器。Selenium库里有个叫 WebDriver 的API。WebDriver 有点儿像可以加载网站的浏览器,但是它也可以像BeautifulSoup 或者其他Selector 对象一样用来查找页面元素,与页面上的元素进行交互 (发送文本、点击等),以及执行其他动作来运行网络爬虫。

02
领券