爬取疫情等关键词的新浪新闻,存到excel
直接代码:
import requests
import json
import xlwt
from bs4 import BeautifulSoup
def getData(page, news):headers = { "Host": "interface.sina.cn", "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0", "Accept": "*/*", "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", "Accept-Encoding": "gzip, deflate, br", "Connection": "keep-alive", "Referer": r"http://www.sina.com.cn/mid/search.shtml?range=all&c=news&q=%E6%97%85%E6%B8%B8&from=home&ie=utf-8", "Cookie": "ustat=__172.16.93.31_1580710312_0.68442000; genTime=1580710312; vt=99; Apache=9855012519393.69.1585552043971; SINAGLOBAL=9855012519393.69.1585552043971; ULV=1585552043972:1:1:1:9855012519393.69.1585552043971:; historyRecord={'href':'https://news.sina.cn/','refer':'https://sina.cn/'}; SMART=0; dfz_loc=gd-default", "TE": "Trailers" }params = { "t":"", "q":"疫情", "pf":"0", "ps":"0", "page":page, "stime":"2019-03-30", "etime":"2022-04-26", "sort":"rel", "highlight":"1", "num":"10", "ie":"utf-8" }response = requests.get("https://interface.sina.cn/homepage/search.d.json?", params=params, headers=headers)dic = json.loads(response.text)news += dic["result"]["list"]return newsdef get_p(url):if url == "":return ""res = requests.get(url)res.encoding = 'utf-8'#print(res.text)html_sample = res.textsoup = BeautifulSoup(html_sample, 'html.parser')art = ""p = soup.select('p[cms-style="font-L"]')for i in p:art = art + str(i.text) + "\n"return artdef writeData(news):workbook = xlwt.Workbook(encoding = 'utf-8')worksheet = workbook.add_sheet('MySheet')worksheet.write(0, 0, "标题")worksheet.write(0, 1, "时间")worksheet.write(0, 2, "媒体")worksheet.write(0, 3, "网址")worksheet.write(0, 4, "新闻内容")for i in range(len(news)):print(news[i])worksheet.write(i+1, 0, news[i]["origin_title"])worksheet.write(i+1, 1, news[i]["datetime"])worksheet.write(i+1, 2, news[i]["media"])worksheet.write(i+1, 3, news[i]["url"])worksheet.write(i+1, 4, get_p(str(news[i]["url"])))workbook.save('data.xls')
def main():news = []for i in range(1,10):news = getData(i, news)writeData(news)if __name__ == '__main__':main()
基本参考:(14条消息) 通过Python爬虫按关键词抓取相关的新闻_工程师大胖的博客-CSDN博客
增加功能:对列表内新闻挨个进去爬取每个新闻的内容
效果:存到data.xsl
爬取疫情等关键词的新浪新闻,存到excel相关推荐
- python爬取开源众包大厅多页任务信息保存到excel
python爬取开源众包大厅多页任务信息保存到excel python版本:py3.5 希望能给大家一些帮助,欢迎加好友讨论微信:18301618273 源码走起: #!/usr/bin/env py ...
- python爬虫爬取豆瓣电影排行榜并通过pandas保存到Excel文件当中
我们的需求是利用python爬虫爬取豆瓣电影排行榜数据,并将数据通过pandas保存到Excel文件当中(步骤详细) 我们用到的第三方库如下所示: import requests import pan ...
- 爬取奇书网各类小说信息并保存到excel中
一开始用的保存函数是将原来的文件内容替换掉,所以换了一种方法就可以追加数据内容了 两种方法的对比 1.追加数据的函数 old_file = xlrd.open_workbook('qishu.xls' ...
- 爬虫实战4:爬取猫眼电影排名Top100的详细数据保存到csv文件
申明:资料来源于网络及书本,通过理解.实践.整理成学习笔记. 文章目录 猫眼电影 完整代码 运行结果 猫眼电影 完整代码 import time import requests import re i ...
- 19Python爬虫--爬取新浪新闻标题并保存到数据库
一.爬取新浪新闻思路 1.创建scrapy项目 2.分析新浪新闻网站静态页面代码 3.编写对应的xpath公式 4.写代码 二.项目代码 步骤1.创建scrapy项目 创建爬虫文件 scrapy st ...
- 从入门到入土:Python爬虫学习|实例练手|爬取新浪新闻搜索指定内容|Xpath定位标签爬取|代码注释详解
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- requests, Beautifusoup 爬取新浪新闻资讯
###1.爬取新浪新闻首页的新闻标题时间和链接 1 import requests 2 from bs4 import BeautifulSoup 3 4 res = requests.get('ht ...
- python爬虫scrapy爬取新闻标题及链接_18Python爬虫---CrawlSpider自动爬取新浪新闻网页标题和链接...
一.爬取新浪新闻思路 1.创建scrapy项目 2.分析新浪新闻网站静态页面代码 3.编写对应的xpath公式 4.写代码 二.项目代码 步骤1.创建scrapy项目 scrapy startproj ...
- python爬取新浪新闻
最近公司项目比较少,楼主闲了好长时间了,作为一个刚毕业几个月的新人,心里很烦躁,只能自己找点新东西去学了.看到周围好多人都接触了爬虫,再加上楼主最近沉迷吴宣仪不可自拔,每天投票投票,投票的同时需要监控 ...
最新文章
- Redis史上最强【集群】入门实践教程
- Prioritize your work by your title
- Docker学习笔记【一】
- 排序算法整理(第十五周实践项目)
- Makefile中的patsubst函数
- FONT Awesome 图标
- 如何利用SQL求取微信的共同好友数?
- 使用ST05 研究product extension field deletion
- 跨语言调用Hangfire定时作业服务
- matlab sdk7.1,免费试用MATLAB Compiler SDK
- MATLAB产生线性等分量函数 linspace
- Linux下进行源码安装时如何避免找不到那些使用--prefix指定目录安装的依赖
- 计算器存储功能怎么用_数控车床加工刀具补偿功能怎么用?
- C#接入steam内购
- PS平面设计零基础如何学好PS平面设…
- Excel表格数据导入
- SAP GUI 770 百度网盘下载
- 【解决Maven项目module不显示蓝色小方块/java文件显示灰色橙色/module already exists问题】
- Chrome之连接到网络 您正在使用的网络可能会要求您访问其登录页面解决方案
- 【网络安全】隐藏网站后台的另一种思路
热门文章
- matlab 拉格朗日LM检验,求问,做LM检验和LR检验的stata命令
- 验证括号的匹配(艾伦图灵的栈操作)
- 大学里MATLAB和proe怎么考,ProENGINEER与MATLABsimulink联合仿真设置
- 学校计算机机房应急预案,中心机房应急预案管理制度
- Consignment 寄售库存
- mysql 1524_Debian/Ubuntu遇到MySQL错误ERROR 1524 (HY000):插件未加载的解决
- MLXG直播破防 怼网友却无意揭露电竞直播行业秘密
- 气象站:处暑至热未止,从事不同行业的人们应该如何预知天气变化
- clair容器镜像工作流程
- (18) DeepCut DeeperCut vote(have a rough understanding)