scrapy helloworld入门

 学完xpath之后,就开始写第一个爬虫程序啦。。

step 1:在terminal中创建一个爬虫项目 

 scrapy startproject baidu  baidu为项目名字,就可以生成项目的默认结构啦。

step 2: 在PC charm里打开项目  

  项目结构如图吐舌头

查阅资料  各个py的内容如下:

init.py  - 保持默认,不需要做任何修改 

items.py - 自定义项目类的地方,也就是爬虫获取到数据之后,传入管道文件(pipelines.py)的载体

pipelines.py -项目管道文件,对传入的项目类中的数据进行清理和入库

settings.py - scrapy项目的设置文件,例如下载延迟,项目管道文件中类的启用以及自定义中间件的启用和顺序

spiders目录 -里面只有一个init.py 文件,在该目录下创建爬虫文件并继承scrapy.Spider

middlewares.py - 中间件配置文件


在新建的py文件里面首先要导入scrapy包,

创建自己的class类,class类要继承scrapy.Spider这个大类

 类下面写name与start_urls name是爬虫的名字,如果项目中有多个爬虫,最好别重复了

start_urls 是爬虫启动后自动爬取的链接,列表内可以放很多链接

def parse(self,response):爬虫启动的时候,爬取链接成功后回调的函数,默认parse,参数self和response是必须的。


写完之后发现并没有爬取成功,报了 DEBUG: Forbidden by robots.txt: <GET http://weibo.com/p/10050583018062>

然后百度看了好久,原来是scrapy 默认检测 robots.txt ,看是否可以抓取,如果不行,就不能用了哦!

解决方案:解决办法是 在 setting.py 中:
''# Obey robots.txt rules
ROBOTSTXT_OBEY = True  //设置为 False 即可

猜你喜欢

转载自blog.csdn.net/qq_36302589/article/details/78229169