(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

时间:2024-05-19 10:50:51

1.在Pycharm的Terminal中输入“scrapy startproject news”创建爬虫项目,“news”为项目名。

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

2.自动生成的工程目录

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

3.编写item.py,也就是定义要爬取信息的字段

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

4.进入news/news/spiders目录下,使用命令“  scrapy genspider -t crawl newscrawl ‘news.sina.com.cn’  ”创建爬虫名为“newscrawl”的爬虫文件,爬虫域是“news.sina.com.cn”。

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

5.编写newscrawl.py文件。其中“https://news.sina.com.cn/\w/time/\w+-\w+.shtml”正则是用来匹配“http://news.sina.com.cn/hotnews/”页面上的链接的。注:可以查看链接的规律个性化定制。

xpath的匹配可以通过“xpath helper”插件来快速定位,或者通过chrome浏览器按F12检查网页代码,选中匹配的代码右击选择“copy xpath”获取匹配规则。

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

 

6.编写pipelines.py文件,处理爬取的数据。(此处是存入数据库)

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

7.在settings.py中将下图中的代码注释取消。

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

8.启动爬虫,在spiders目录下启动爬虫“scrapy crawl newscrawl

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

9.任务结束后查看数据库。(因为数据库中newsContent字段在自己的项目中是用富文本编辑器展示的,所以将标签和内容一起爬取出来,便于展示。可以根据自己的需求在步骤5中修改content的xpath匹配规则)

(详细步骤)使用scrapy爬取"新浪热点新闻",进入链接获取新闻内容。

10.将项目部署到阿里云,设置定时任务。

链接:跳转至“定时爬虫”