需求:
爬取东方财富证券http://kuaixun.eastmoney.com/ssgs.html的财经新闻数据
1.爬取页面中的标题和对应的内容:【标题】内容
2.进行分页操作,爬取当前页面所有页码对应的标题和内容数据
3.不可以使用selenium
4.进行任意形式的持久化存储
代码:
通过对网站的分析发现翻页时,有ajax数据包分析数据包的url发现,翻页改变url中的参数,共20页
#url— http://kuaixun.eastmoney.com/ssgs.html import requests import json import re headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.12 Safari/537.36' } # 通过对网站的分析发现翻页时,有ajax数据包分析数据包的url发现,翻页改变url中的参数,共20页 url = "http://newsapi.eastmoney.com/kuaixun/v1/getlist_103_ajaxResult_50_{}_.html" for i in range(1,21): url2 = url.format(i) page_text = requests.get(url=url2, headers=headers).text page_str = re.findall('{.*}',page_text)[0] page_dic = json.loads(page_str) page_list = page_dic["LivesList"] content_list = [] for dic in page_list: content = dic["digest"] content_list.append(content) # 分页存储 with open(f"./第{i}页新闻","w",encoding='utf-8') as fp: fp.write(' '.join(content_list)) print(f"第{i}页新闻存储成功")