备忘录性质


基础知识

安装和建项目

pip install scrapy
#创建项目
scrapy startproject name
#创建新spider
scrapy genspider mydomain mydomain.com

shell模式

scrapy shell https://www.baidu.com

  • shelp() - 打印可用对象及快捷命令的帮助列表
  • fetch(request_or_url) - 根据给定的请求(request)或URL获取一个新的response,并更新相关的对象
  • view(response) - 在本机的浏览器打开给定的response。 其会在response的body中添加一个 <base> tag ,使得外部链接(例如图片及css)能正确显示。 注意,该操作会在本地创建一个临时文件,且该文件不会被自动删除。

爬虫

分析目标网站

使用chrome的xpath插件,分析网站关键数据点,层级结构,翻页规则,数据来源
使用scrapy shell工具帮助分析
使用scrapy shell <url>打开交互式界面,response就是请求之后获取的返回对象,在这个对象上执行response.xpath(),response.css(),response.re()测试数据获取的结果,进行验证。

如果需要代理,可以在命令行执行下面的命令设置代理。

set http_proxy=http://127.0.0.1:1080
set https_proxy=http://127.0.0.1:1080

编写

  • 写字段items.py
  • 写存储pipelines.py 少量数据可以存储到json文件scrapy crawl dmoz -o items.json
  • 写爬虫spider.py 使用scrapy.Requestcallback参数不断套娃,从首页分类分页找到商品详情页,return item

运行

scrapy crawl name
scrapy runspider name
最后修改:2020 年 01 月 08 日 04 : 35 PM