谷歌地图嵌入网站,企业展厅的作用,泰安网站建设开发公司,百度seo点击器如何利用Scrapy框架实战提取百度首页热榜新闻的排名、标题和链接
一、安装Scrapy库 二、创建项目#xff08;以BaiduSpider为例#xff09;
scrapy startproject BaiduSpider生成每个文件的功能#xff1a; 二、 创建爬虫脚本#xff08;爬虫名#xff1a;news#xff…如何利用Scrapy框架实战提取百度首页热榜新闻的排名、标题和链接
一、安装Scrapy库 二、创建项目以BaiduSpider为例
scrapy startproject BaiduSpider生成每个文件的功能 二、 创建爬虫脚本爬虫名news
scrapy genspider news www.baidu.com命令执行成功后spider目录中将生成news.py文件 1name在同一个项目中名字是唯一的用来区分不同的spider。 2allowed_domains允许爬取的域名如果初始或后续请求的URL不是这个域名下的则请求会被过滤掉可以根据需要编辑或添加。 3start_urlsspider初始爬取的URL列表可以根据需要编辑或添加。 4parse(selfresponse)解析返回的响应提取数据或新的URLresponse是请求start_urls后返回的响应。
三、修改settings脚本位置settings.py
设置请求头中的User-Agent和不遵守Robots协议 四、完善爬虫位置news.py
编写解析方法 五、 运行爬虫
正常运行爬虫命令
scrapy crawl news不打印日志文件运行爬虫命令
scrapy crawl news --nolog六、数据保存
6.1 修改items脚本位置items.py
scrapy库提供Item对象来实现将爬取到的数据转换成结构化数据的功能。实现方法是定义Item类继承scrapy.Item类并定义类中的数据类型为scrapy.Filed字段。 6.2 编写解析方法位置news.py 6.3 保存为JSON文件
scrapy crawl news -o news.json命令执行成功后BaiduSpider目录中将生成news.json文件 注意 使用-o输出JSON文件时会默认使用unicode编码当内容为中文时输出的JSON文件不便于查看。此时可以在settings.py文件中修改默认的编码方式即增加设置FEED_EXPORT_ENCODING ‘utf-8’。