举例网站:http://www.luoo.net/music/期刊号
e.g:http://www.luoo.net/music/760
打算爬取其title:Hello World;pic;desc:本期音乐为......《8-bit Love》。
步骤:
1):建立项目
在shell中你对应的目录下:scrapy startproject luoo
在pycharm中打开luoo文件夹
2):编写items.py
import scrapyclass LuooItem(scrapy.Item): url = scrapy.Field() title = scrapy.Field() pic = scrapy.Field() desc = scrapy.Field() 3):编写spider 在spiders文件夹下建立luoospider.py
import scrapyfrom luoo.items import LuooItem class LuooSpider(scrapy.Spider): name = "luoo" allowed_domains = ["luoo.net"] start_urls = [] for i in range(750,763): url = ‘http://www.luoo.net/music/%s‘%(str(i)) start_urls.append(url) def parse(self, response): item = LuooItem() item[‘url‘] = response.url item[‘title‘] = response.xpath(‘//span[@class="vol-title"]/text()‘).extract() item[‘pic‘] = response.xpath(‘//img[@class="vol-cover"]/@src‘).extract() item[‘desc‘] = response.xpath(‘//div[@class="vol-desc"]/text()‘).extract() return item4)pipelines.py不动5)在command中进入luoo目录 scrapy list 列出可用的爬虫(luoo) scrapy crawl luoo -o result.csv(执行爬虫并且以result.csv保存到当前目录下)6)用notepad++打开result.py并且更改格式为ANSI后保存,再用excel打开就不会有乱码了 *遗留to do:1)数据考虑后期迁移到mysql数据库2)单独把图片保存到图片格式的文件夹中
时间: 2024-10-16 07:38:17