日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

scrapy实现post请求与请求传参

發布時間:2025/5/22 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 scrapy实现post请求与请求传参 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

不推薦使用scrapy框架發送post請求,配置復雜,如果在數據量大 的情況下,可以通過如下代碼來實現:

import scrapyclass FySpider(scrapy.Spider):name = 'fy'# allowed_domains = ['www.baidu.com']start_urls = ['https://fanyi.baidu.com/sug']def start_requests(self):data={'kw':"beautiful"}for url in self.start_urls:yield scrapy.FormRequest(url=url,formdata=data,callback=self.parse)def parse(self, response):print(response.text)

方法一:就是重寫scrapy下面的start_requests方法

方法二:將URL鏈接寫在外部,然后手動去發送請求  scrapy.FormRequest(url=url,formdata=data,callback=self.parse)

請求傳參的實現:

# -*- coding: utf-8 -*- import scrapy from video.items import VideoItemclass MvSpider(scrapy.Spider):name = 'mv'# allowed_domains = ['www.piaohua.com/']start_urls = ['http://www.88ys.cc/dianying/1.html']def detail_parse(self,response):item=response.meta['item']year=response.xpath('//div[@class="ct-c"]/dl/dd[3]/text()').extract_first()country = response.xpath('//div[@class="ct-c"]/dl/dd[2]/text()').extract_first()type_list=response.xpath('//div[@class="ct-c"]/dl/dt//a/text()').extract()type=" ".join(type_list) #電影類型 多標簽 列表轉字符串actor = response.xpath('//div[@class="ct-c"]/dl/dt[3]/text()').extract_first()about=response.xpath('//div[@class="ee"]/text()').extract_first()item['year']=yearitem['country'] =countryitem['type'] =typeitem['actor'] =actoritem['about'] =aboutyield itemdef parse(self, response):li_list=response.xpath('//div[@class="index-area clearfix"]/ul/li/a')item=VideoItem()for li in li_list:m_url='http://www.88ys.cc'+li.xpath('./@href').extract_first()name=li.xpath('./@title').extract_first()item['name']=nameyield scrapy.Request(url=m_url,callback=self.detail_parse,meta={'item':item})

?item文件代碼:

import scrapyclass VideoItem(scrapy.Item):# define the fields for your item here like:name = scrapy.Field()year = scrapy.Field()country = scrapy.Field()type = scrapy.Field()actor = scrapy.Field()about = scrapy.Field()

?

轉載于:https://www.cnblogs.com/wen-kang/p/10960169.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的scrapy实现post请求与请求传参的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。