前人之述备矣
教程:
注意:是cmd不是powershell,两者还是有区别的。 因为是本地的虚拟环境,用cmd激活环境并且安装相关的scrapy包,如果用powershell,在pycharm中显示不了安装的包。
如何快速打开cmd或powershell?
1.win+R打开“运行”,然后输入cmd或powershell,回车进入;
2.可在打开的文件夹内,直接在地址栏输入cmd或powershell,回车进入;
3.在Windows的搜索应用中输入cmd或powershell,回车进入。
安装好之后检查:
创建成功如下:
文件结构:
scrapy genspider blogs news.cnblogs.com
抓取模板,可以按照自己的需求修改模板。
采集静态数据,大部分网站都是动态的。
典型的分页数据:
采集详细信息:将所有页面采集下来-->详细信息:发布时间,内容,评论等
抓取所有文章的url.
执行:
可以在断点之后看见response的信息,self和response:
独立的语法,与各种库不同,可以兼容各种库。
XPath,全称 XML Path Language,即 XML 路径语言,它是一门在XML文档中查找信息的语言。XPath 最初设计是用来搜寻XML文档的,但是它同样适用于 HTML 文档的搜索。
response参数:使用xpath就可以提取
通过复制xpath:
缺点:如果数据刷新,无法提取到正确数据。
// *[ @ id = "entry_740378"] / div[2] / h2 / a
提取出所有满足条件的:
使用特殊的设置,巧妙的xpath
没有xpath强大,使用css样式选择,解析出合适的内容:如h2
url = response.css('div#news_list h2 a::attr(href)').extract()
使用parse,做了很多处理,获取url.