scrapy初步-简单静态爬虫(爬取电影天堂所有电影)
import scrapy
class MovieSpider(scrapy.Spider):
name = 'movie'
allowed_domains = ['123.com']
start_urls = ['http://www.123.com/']
def parse(self, response):
# 提取电影信息的xpath路径
movie_paths = response.xpath('//div[@class="item"]')
for movie_path in movie_paths:
# 提取电影详情页的URL
detail_url = movie_path.xpath('.//a[@class="ulink"]/@href').extract_first()
# 合并完整的URL
detail_url = response.urljoin(detail_url)
# 进一步解析电影详情页
yield scrapy.Request(detail_url, callback=self.parse_detail)
def parse_detail(self, response):
# 提取电影名称和信息
name = response.xpath('//div[@class="title"]/h1/text()').extract_first()
info = response.xpath('//div[@class="info"]').extract()
# 打印结果
print(name, info)
这个代码示例展示了如何使用Scrapy框架创建一个简单的爬虫,来爬取电影天堂网站的电影名称和信息。代码中包含了初始的URL、如何发送请求、如何提取页面中的数据以及如何处理详情页的数据。这个示例教学有效地展示了Scrapy爬虫的基本结构和工作流程。
评论已关闭