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

最新文章

  1. 用c#开发微信 (20) 微信登录网站 - 扫描二维码登录
  2. MFC文件操作
  3. Linux 中强大且常用命令:find、grep
  4. 【C语言学习】-06 函数
  5. javascript --- 子对象访问父对象的方式
  6. HDU 1089 A+B for Input-Output Practice (I)
  7. dfs-hdu-4620-Fruit Ninja Extreme
  8. Win7和VS2013上使用Intel的TBB
  9. Python使用os.listdir()函数来获得目录中的内容
  10. ASP.NET没有魔法——ASP.NET MVC 直连路由(特性路由)
  11. PreparedStatement和Statement区别
  12. 最长上升子序列(LIS)
  13. 图片文字识别aip的一个小Demo
  14. 剑指Offer 19. 顺时针打印矩阵 (其他)
  15. python基础学习第二天
  16. linux一些命令的介绍
  17. android shareUID
  18. 7款易上手C语言编程软件推荐
  19. ASP.netMVC文件下载的几种方法
  20. 升级系统后maxvim不能用,重新下载编译个

热门文章

  1. Redis加入Centos Linux开机启动
  2. Android Studio打包.so文件教程
  3. hadoop-15-Ambari进行HDP、zookeeper安装
  4. jsp-include 写法
  5. HTML5 界面元素 Canvas 參考手冊
  6. js如何实现简繁体互转
  7. [NOI2002] Robot 解题报告(数论+DP)
  8. vue --- 路由传参的几种方式
  9. C语言基础-第五章
  10. js中作用域链的问题