python的scrapy框架爬取懒人听书网站

项目地址:https://github.com/gejinnvshe...
微信公众号:天字一等css

爬取懒人听书平台书籍的书名、做者名、分类,后续还会增长爬取音频html

爬虫用到的框架:scrapy Anaconda是专一于数据分析的Python发行版本python

scrapy简单入门及实例讲解:https://www.cnblogs.com/kongz... scrapy进阶实例:https://blog.csdn.net/z564359...git

scrapy框架知识点github

一、ROBOTSTXT_OBEY = False 粗解
https://www.jianshu.com/p/19c1ea0d59c2
二、爬虫-User-Agent和代理池
http://www.javashuo.com/article/p-ppjjlwhb-cu.html
三、
scrapy项目配置文件:
scrapy.cfg:爬虫项目的配置文件。
__init__.py:爬虫项目的初始化文件,用来对项目作初始化工做。
items.py:爬虫项目的数据容器文件,用来定义要获取的数据。
一、pipelines.py:爬虫项目的管道文件,用来对items中的数据进行进一步的加工处理。 二、scrapy的pipeline是一个很是重要的模块,主要做用是将return的items写入到数据库、文件等持久化模块
settings.py:爬虫项目的设置文件,包含了爬虫项目的设置信息。
middlewares.py:爬虫项目的中间件文件,
4
使用anaconda prompt运行.py文件,执行scrapy crwal xx指令时,xx是.py文件中给name赋的值
使用anaconda prompt运行.py文件,执行scrapy crwal xx指令时,若是报错说少了yy modules,直接输入pip install yy执行安装包,不用在进入对应的项目目录下
五、 https://scrapy-chs.readthedocs.io/zh_CN/1.0/intro/tutorial.html?highlight=extract正则表达式

  • xpath(): 传入xpath表达式,返回该表达式所对应的全部节点的selector list列表 。
  • css(): 传入CSS表达式,返回该表达式所对应的全部节点的selector list列表.
  • extract(): 序列化该节点为unicode字符串并返回list。
  • re(): 根据传入的正则表达式对数据进行提取,返回unicode字符串list列表。

六、elastisearch查询语句
https://segmentfault.com/q/1010000017553309/
七、传入xpath表达式,返回该表达式所对应的全部节点的selector list列表
extract(): 返回被选择元素的unicode字符串
八、yield
yield的做用 这里是在爬取完一页的信息后,咱们在当前页面获取到了下一页的连接,而后经过 yield 发起请求,数据库

# 而且将 parse 本身做为回调函数来处理下一页的响应
            #  https://www.jianshu.com/p/7c1a084853d8
            yield Request(self.lrtsUrl + next_link, callback=self.parse, headers=headers)  #获取下一页,parse是回调函数来处理下一页的响应

九、meta scrapy的request的meta参数是什么意思?
https://blog.csdn.net/master_ning/article/details/80558985segmentfault

python基础知识点:微信

class:#建立类 类就是一个模板,模板里能够包含多个函数,函数里实现一些功能
def:#建立类中函数
pass:pass 不作任何事情,通常用作占位语句。
if name == '__main__':的做用
https://www.cnblogs.com/kex1n/p/5975575.html
五、python range() 函数可建立一个整数列表,通常用在 for 循环中。
函数语法
range(start, stop[, step])
六、Python len() 方法返回对象(字符、列表、元组等)长度或项目个数。
语法
len()方法语法:
len( s )框架

相关文章
相关标签/搜索