码迷,mamicode.com
首页 > 其他好文 > 详细

Scrapy请求传参

时间:2019-04-04 20:23:36      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:odi   允许   pid   响应   html   zoom   成功   request   tab   

scrapy.Request(url=url, callback=self.parse_item, meta={‘item‘: item}, headers=headers)

url: 要请求的地址

callback:响应成功之后的回调函数

meta: 参数传递

headers: 定制头信息,一般不用

# -*- coding: utf-8 -*-
‘‘‘
要抓取的数据部分在一级页面、一部分在二级页面
‘‘‘
import scrapy
from movie.items import MovieItem

class MvSpider(scrapy.Spider):
# 爬虫文件的名字
name = ‘mv‘
# 允许的域名
allowed_domains = [‘www.ygdy8.net‘]
# 起始的url
start_urls = [‘http://www.ygdy8.net/html/gndy/dyzz/index.html‘]
def parse(self, response):
a_list = response.xpath(‘//div[@class="co_content8"]//table//a‘)
for a in a_list:
title = a.xpath(‘./text()‘).extract_first()
href = ‘http://www.ygdy8.net‘ + a.xpath(‘./@href‘).extract_first()
movie = MovieItem(title=title)
# callback是执行的方法 meta是响应时候携带的参数
yield scrapy.Request(url=href,callback=self.parse_detail,meta={‘movie‘:movie})

def parse_detail(self,response):
movie = response.meta[‘movie‘]
src = response.xpath(‘//div[@id="Zoom"]//p[1]/img[1]/@src‘).extract_first()
movie[‘src‘]=src
yield movie

 

Scrapy请求传参

标签:odi   允许   pid   响应   html   zoom   成功   request   tab   

原文地址:https://www.cnblogs.com/huanggaoyu/p/10656674.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!