一、安装scrapy
在cmd命令行输入pip install scrapy
二、爬取数据(以爬取一个网址的为例)
1、安装后创建一个文件夹(名字自取)
2、在所创建的文件夹路径上进入命令行模式,
3、在命令界面输入scrapy startproject mySpider 创建出一个名为mySpider的文件夹,
4、进入文件夹mySpider中的mySpider,输入cmd进入命令行,
5、在命令行界面输入scrapy genspider 爬虫名称 "爬虫域" ,例如:scrapy genspider itcast "itcast.cn"。打开pycharm,打开第一个名为mySpider的文件夹,这时就能看见刚刚所创建的名为itcast的Python文件了。
6、在名为items.py的文件输入要爬取的名字标题等等。
7、在名为itcast的Python文件里面编辑,start_urls=["你所要爬取的网址"],输入with open ("随便一个名字.html","w",encoding="utf-8") as file: file.write(response.text),在刚刚所在的命令行里面输入scrapy crawl 爬虫名称(例如:scrapy crawl itcast),测试是否能爬取到网址的内容。如成功便会在mySpider的文件出现一个html文件。
8、用一个for循环输出要爬取的内容,创建一个items集合接收爬取的结果,在刚刚所在的命令行里面输入scrapy crawl 爬虫名称(例如:scrapy crawl itcast),便会看见爬取结果
for i in response.xpath("//div[@class='li_txt']"):
item = MyspiderItem()
name=i.xpath("h3/text()").extract()
# print(name)
title = i.xpath("h4/text()").extract()
# print(title)
info= i.xpath("p/text()").extract()
# print(info)
#存放老师的集合
items=[]
item["name"]=name
item["title"] = title
item["info"] = info
items.append(item)
print(items)
return items
最后在命令行界面输入scrapy crawl itcast -o teachers.csv,会得到一个exc格式的文件,若输入scrapy crawl itcast -o teachers.json得到一个json格式的文件
参考阅读
发表评论