爬取腾讯新闻中省份疫情数据到Mysql数据库

爬取腾讯新闻中省份疫情数据到Mysql数据库

本人是一个中职学生,第一次发表自己所学到技术……
本篇文章所用到的语言及工具等:
python 3.8
pycharm
Mysql
Navicat Premium 15
requests
json

步骤:

1. 首先要进入腾讯新闻疫情网站

2.然后按F12进入检查在Network找到json数据文件的Url:

在这里插入图片描述

我们可以看到此URL
我们可以看到此URL:为https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5&callback=jQuery351004605322824901026_1615602273847&_=1615602273848
注:https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5 此url也是有效的

然后将它复制粘贴到百度就可以看到:
在这里插入图片描述
emmm… 这真是密集恐惧症的"福利"

3.在pyCharm 里来创建python文件进行爬取:

我们要爬取的是省份疫情数据所以在爬取前要找到省份数据的位置:
由于腾讯的json数据并不支持在浏览器中自动美化,所以就拿来网易的来看:
在这里插入图片描述

我们需要将这数据依次取出就可以啦

上代码


```python
import j
### 使用 Python 爬虫抓取腾讯新闻最新文章并存储至 MySQL 数据库 为了实现从腾讯新闻网站抓取最新的新闻信息并将这些信息存储到 MySQL 数据库中,可以采用如下方法: #### 准备工作 确保安装了必要的 Python 库,如 `requests` 和 `pymysql`。可以通过 pip 安装这两个包。 ```bash pip install requests pymysql ``` #### 抓取网页内容 利用 `requests` 发送 HTTP 请求来获取页面 HTML 文本,并解析其中的数据。这里假设已经找到了包含最新文章列表的 URL 地址[^1]。 ```python import requests from bs4 import BeautifulSoup url = 'https://new.qq.com/omn/20231018/20231018A07QZD.html' # 示例URL,请替换为实际的目标链接 response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') articles = soup.find_all('div', class_='fig fig_left') # 假设这是存放每篇文章摘要的地方 ``` #### 解析所需字段 对于每一个 article 对象,提取标题、发布时间和其他任何想要保存的信息。这一步骤依赖于目标站点的具体结构[^2]。 ```python data_list = [] for art in articles[:5]: # 只处理前五条记录作为例子 title = art.h3.a.string.strip() pub_time = art.span['title'].strip() if 'title' in art.span.attrs else None data_dict = { 'title': title, 'pub_date': pub_time } data_list.append(data_dict) ``` #### 将数据存入 MySQL 数据库 建立与本地或远程 MySQL 实例之间的连接,并创建相应的表用于接收来自爬虫数据。最后通过 SQL 插入语句完成持久化操作[^3]。 ```python import pymysql.cursors connection = pymysql.connect( host='localhost', user='root', password='password', database='news_db' ) try: with connection.cursor() as cursor: create_table_sql = """ CREATE TABLE IF NOT EXISTS news ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255), pub_date DATETIME ); """ cursor.execute(create_table_sql) insert_data_sql = "INSERT INTO news (title, pub_date) VALUES (%s, %s)" for item in data_list: try: cursor.execute(insert_data_sql, (item['title'], item['pub_date'])) except Exception as e: print(f"Failed to insert record {item}: {e}") connection.commit() finally: connection.close() ``` 上述代码片段展示了如何构建一个简单的 Python 程序去访问指定网址上的资源,分析其结构以获得特定的文章详情,并最终把这些信息安全地转移到关系型数据库里进行长期保管[^4]。
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Agoin101

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值