最近在做python爬取新闻,所以分别研究了下新浪、网易、中国新闻网的爬取方法。其他几个网页的新闻爬取我的博客里都有,请自行查看~
首先,因为需获取的数据为百万级别,所以直接选择了新浪的滚动新闻中心
https://news.sina.com.cn/roll/#pageid=153&lid=2509&k=&num=50&page=1
本人共需获取100w条数据,分了10个新闻类别,每个类别获取10w条
获取百万条新闻链接,存储到csv文件中
1、获取滚动新闻网第一页的50条新闻链接
获取某一页内的新闻链接可以直接这样写,测试使用
import time
import sys
import requests
from multiprocessing import Pool
from bs4 import BeautifulSoup
init_url = 'https://feed.mix.sina.com.cn/api/roll/get?pageid=153&lid=2509&k=&num=50&page={}'
headers = {
'User-Agent':
'Mozilla/5.0 (Windows NT 10.0; WOW64) '
'AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/55.0.2883.87 Safari/537.36'}
page = requests.get(url=init_url.format(1)).json()
#res = json.loads(res.text)
for j in range(50):
urls = page['result']['data'][j]['wapurl']
print(urls)
2、取某一类别的新闻链接
以“科技”新闻为例
'''
获取 新浪滚动新闻 的链接
存储为csv文件
'''
import time
import sys
import os
import requests
from multiprocessing import Pool
from bs4 import BeautifulSoup