重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
今天小编给大家分享一下python中怎么重写start_requests方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
成都创新互联为企业级客户提高一站式互联网+设计服务,主要包括网站制作、成都网站制作、重庆APP开发、小程序制作、宣传片制作、LOGO设计等,帮助客户快速提升营销能力和企业形象,创新互联各部门都有经验丰富的经验,可以确保每一个作品的质量和创作周期,同时每年都有很多新员工加入,为我们带来大量新的创意。
说明
1、在scrapy中,start_url是由start_requests处理的,通过重写这种方法,start_url可以携带请求头信息。
2、cookie不能放在scrapy中的headers中,在构建请求时有专门的cookies参数。
可以接收字典形式的cookie。可能需要在settings中设置ROBOTS协议和USER_AGENT。
实例
import scrapy class Git1Spider(scrapy.Spider): name = 'git1' allowed_domains = ['github.com'] start_urls = ['https://github.com/GitLqr'] def start_requests(self): """ 重写start_requests,发送携带cookies的Request。 默认start_requests只是普通的get请求,不会携带自定义的头信息 """ url = self.start_urls[0] temp = '_octo=GH1.1.1045146750.1615451260; _device_id=cd8d64981fcb3fd4ba7f587873e97804' # 把cookies字符串转成字典 cookies = {data.split('=')[0]: data.split('=')[-1] for data in temp.split('; ')} yield scrapy.Request( url=url, callback=self.parse, cookies=cookies ) def parse(self, response): print(response.xpath('/html/head/title/text()').extract_first())
以上就是“python中怎么重写start_requests方法”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。