AI炒股-批量爬取网易财经的要闻板块

工作任务和目标:批量爬取网易财经的要闻板块

在class="tab_body current"的div标签中;

标题和链接在:<a href="https://www.163.com/dy/article/J2UIO5DD051188EA.html">华为急需找到“松弛感”</a>

第一步,在kimi中输入如下提示词:

你是一个Python爬虫专家,完成以下网页爬取的Python脚本任务:

在F:\aivideo文件夹里面新建一个Excel文件:163money.xlsx

设置chromedriver的路径为:"D:\Program Files\chromedriver125\chromedriver.exe"

用selenium打开网页:https://money.163.com/;

请求标头:

:authority:

http://money.163.com

:method:

GET

:path:

/

:scheme:

https

Accept:

text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7

Accept-Encoding:

gzip, deflate, br, zstd

Accept-Language:

zh-CN,zh;q=0.9,en;q=0.8

Cache-Control:

max-age=0

Cookie:

__root_domain_v=.163.com; _qddaz=QD.484716194472545; _ntes_origin_from=sogou; _ntes_nuid=af525edefbd3d363cd5876dbe902d85b; s_n_f_l_n3=01cb466d244b7db51716517702302; _antanalysis_s_id=1716517702995; UserProvince=%u5168%u56FD; ne_analysis_trace_id=1716518441938; vinfo_n_f_l_n3=01cb466d244b7db5.1.0.1716517702302.0.1716518672850

If-Modified-Since:

Fri, 24 May 2024 02:40:05 GMT

Priority:

u=0, i

Referer:

https://www.sogou.com/link?url=hedJjaC291M4oaTBlXc5yCiioa5eDVgw

Sec-Ch-Ua:

"Google Chrome";v="125", "Chromium";v="125", "Not.A/Brand";v="24"

Sec-Ch-Ua-Mobile:

?0

Sec-Ch-Ua-Platform:

"Windows"

Sec-Fetch-Dest:

document

Sec-Fetch-Mode:

navigate

Sec-Fetch-Site:

cross-site

Sec-Fetch-User:

?1

Upgrade-Insecure-Requests:

1

User-Agent:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36

解析源代码,并打印输出;

定位class="tab_body current"的div标签;

在div标签中定位所有的a标签,提取a标签的href作为网页下载URL,保存到163money.xlsx的第2列;

提取a标签的文本内容作为网页文件名,保存到163money.xlsx的第1列;

注意:

每一步都要输出相关信息到屏幕;

每解析一个网页随机暂停1-10秒;

设置请求头,来应对反爬虫机制;

第二步,查看审阅Kimi生成的Python代码:

import pandas as pd

import time

import random

from selenium import webdriver

from selenium.webdriver.chrome.service import Service

from webdriver_manager.chrome import ChromeDriverManager

from selenium.webdriver.common.by import By

from selenium.common.exceptions import StaleElementReferenceException

# 设置chromedriver的路径

service = Service(executable_path=r"D:\Program Files\chromedriver125\chromedriver.exe")

# 使用selenium的ChromeDriverManager来自动管理chromedriver

driver = webdriver.Chrome(service=service)

# 打开网页

url = "https://money.163.com/"

driver.get(url)

# 打印网页源代码

print("网页源代码:")

print(driver.page_source)

# 定位class="tab_body current"的div标签

try:

tab_body = driver.find_element(By.CLASS_NAME, "tab_body.current")

print("定位到class='tab_body current'的div标签")

except Exception as e:

print("定位class='tab_body current'的div标签时出错:", e)

driver.quit()

# 定位所有的a标签并提取信息

a_tags = tab_body.find_elements(By.TAG_NAME, "a")

urls = []

titles = []

for a in a_tags:

try:

title = a.text

href = a.get_attribute('href')

urls.append(href)

titles.append(title)

print(f"找到链接:{title},URL:{href}")

except StaleElementReferenceException:

print("元素引用已失效,尝试刷新页面后重新获取")

driver.refresh()

time.sleep(3) # 等待页面刷新

# 保存到Excel文件

excel_path = r"F:\aivideo\163money.xlsx"

df = pd.DataFrame({

'网页文件名': titles,

'网页下载URL': urls

})

# 使用pandas的ExcelWriter保存到Excel文件

with pd.ExcelWriter(excel_path, engine='openpyxl') as writer:

df.to_excel(writer, index=False)

print(f"数据已保存到 {excel_path}")

# 每解析一个网页随机暂停1-10秒

time.sleep(random.randint(1, 10))

# 关闭浏览器

driver.quit()

print("所有网页下载完成")

第三步,打开visual studio code软件,新建一个py文件,将Python代码复制到这个文件中,按下F5键运行程序:

程序运行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/845551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

短剧源码:打造个性化的在线短剧观看平台

随着短视频和短剧内容的兴起&#xff0c;越来越多的用户开始追求快节奏、高效率的娱乐方式。短剧源码的开发&#xff0c;为满足这一需求提供了技术基础。本文将详细介绍短剧源码的构成&#xff0c;以及如何通过这一源码打造个性化的在线短剧观看平台。 一、首页设计 首页是用…

【C++题解】1448. 随机体能测试

问题&#xff1a;1448. 随机体能测试 类型&#xff1a;循环应用&#xff0c;嵌套循环 题目描述&#xff1a; 学校想随机抽取一部分同学参加体能测试&#xff0c;看看同学们的体能怎么样。 张老师想了一个办法&#xff0c;找出学号中含有 1 的同学&#xff0c;让他们参加体能测…

并发和异步编程:详细概述

01 Concurrency and Asynchronous Programming: a Detailed Overview 并发和异步编程:详细概述 Asynchronous programming is one of those topics many programmers find confusing. You come to the point when you think you’ve got it, only to later realize that the …

162.二叉树:填充每个节点的下一个右侧节点指针(力扣)

代码解决 /* // Definition for a Node. class Node { public:int val;Node* left;Node* right;Node* next;Node() : val(0), left(NULL), right(NULL), next(NULL) {}Node(int _val) : val(_val), left(NULL), right(NULL), next(NULL) {}Node(int _val, Node* _left, Node* _…

ipv6基础

地址 前缀子网主机位 PI法则3.14 前缀&#xff1a;3个16位 子网&#xff1a;1个16位 接口ID&#xff1a;4个16位 地址分类 未指定地址 ::/128 &#xff0c;类似于0.0.0.0 本地回环地址 ::1/128 &#xff0c;用于本地测试&#xff0c;类似于127.0.0.1 本地链路地址&#x…

利用GNSS IMU集成提高车道级定位精度

准确的定位对于很多不同的事情都是至关重要的。导航系统可以引导我们去某个地方&#xff0c;自动驾驶汽车可以利用这些数据在道路上安全行驶。尽管全球导航卫星系统(GNSS)在定位方面非常出色&#xff0c;但它们可能并不总是提供最准确的车道水平事实。解决这个问题的一个有希望…

如何矢将量数据转换为栅格数据

在我们分析GIS数据时&#xff0c;有时候也可能需要将矢量数据转换为栅格数据来使用&#xff0c;例如&#xff1a;使用AI图像识别技术进行GIS数据分析或导航的时候&#xff01;矢量数据就可能不满足需求了&#xff01; GIS数据转换器-矢量V5.0具有矢量数据转换为栅格数据的功能…

Python魔法之旅-魔法方法(07)

目录 一、概述 1、定义 2、作用 二、应用场景 1、构造和析构 2、操作符重载 3、字符串和表示 4、容器管理 5、可调用对象 6、上下文管理 7、属性访问和描述符 8、迭代器和生成器 9、数值类型 10、复制和序列化 11、自定义元类行为 12、自定义类行为 13、类型检…

linux部署运维1——centos7.9离线安装部署涛思taos2.6时序数据库TDengine

在实际项目开发过程中&#xff0c;并非一直都使用关系型数据库&#xff0c;对于工业互联网类型的项目来说&#xff0c;时序型数据库也是很重要的一种&#xff0c;因此掌握时序数据库的安装配置也是必要的技能&#xff0c;不过对于有关系型数据库使用的开发工作者来说&#xff0…

如何获取SSL证书,消除网站不安全警告

获取SSL证书通常涉及以下几个步骤&#xff1a; 选择证书颁发机构&#xff08;CA&#xff09;&#xff1a; 你需要从受信任的SSL证书颁发机构中选择一个&#xff0c;比如DigiCert、GlobalSign、JoySSL等。部分云服务商如阿里云、腾讯云也提供免费或付费的SSL证书服务。 生成证…

大数据之HIVE,一次HIVESQL执行的过程(四)

在hive中执行如下sql INSERT OVERWRITE TABLE XXX SELECT * from XXX 数据最终是怎么存储到hdfs上的过程 执行的过程当中,打印出如下的日志过程,本质上是一个在MapReduce中进行Shuffle的过程 所以下面就Shuffle的过程进行分析 Shuffle 描述的是数据从 Map 端到 Reduce 端的…

曾巩,散文的艺术与哲思

曾巩&#xff0c;字子固&#xff0c;世称南丰先生&#xff0c;南丰&#xff08;今江西&#xff09;人&#xff0c;生于北宋真宗天禧三年&#xff08;公元1019年&#xff09;&#xff0c;卒于北宋元丰六年&#xff08;公元1083年&#xff09;&#xff0c;享年64岁。他是中国北宋…

http协议及httpd安装组成

文章目录 一、http协议http协议通信过程http相关技术网站访问量HTTP工作机制HTTP协议版本HTTP请求访问的完整过程HTTP报文头部响应报文 二、httpd安装组成apache介绍和特点工作模式&#xff08; MPM multi-processing module &#xff09;Http相关文件Http编译安装httpd常见配置…

显示器与电脑如何分屏显示?

1.点击电脑屏幕右键--显示设置 2、然后找到屏幕---找到多显示器---选择扩展显示器

OpenAI 推出ChatGPT Edu,为高校定制版本

近日&#xff0c;OpenAI 宣布推出 ChatGPT Edu&#xff0c;这是一款专为高校打造的 ChatGPT 版本&#xff0c;旨在帮助学生、教师、研究人员和校园运营部门以负责任的方式部署和使用 AI。 ChatGPT Edu 由 GPT-4o 提供支持&#xff0c;具备强大的文本和图像推理能力&#xff0c;…

Java18新版本特性!

Java 18引入了多项新特性&#xff0c;主要包括默认UTF-8字符集、简单的Web服务器、栈步进API等。Java 18是Oracle在2022年发布的版本&#xff0c;其旨在通过一系列创新特性来提升开发效率与性能。下面将逐一探讨Java 18的主要新特性以及它们对开发者的具体影响&#xff1a; 默认…

7、css3实现边框不停地跑动效果

效果例图&#xff1a; 1、上html代码&#xff1a; <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><meta …

文明互鉴促发展——2024“国际山地旅游日”主题活动在法国启幕

5月29日&#xff0c;2024“国际山地旅游日”主题活动在法国尼斯市成功举办。中国驻法国使领馆、法国文化旅游部门、地方政府、国际组织、国际山地旅游联盟会员代表、旅游机构、企业、专家、媒体等围绕“文明互鉴的山地旅游”大会主题和“气候变化与山地旅游应对之策”论坛主题展…

GNU Radio实现OFDM Radar

文章目录 前言一、GNU Radio Radar Toolbox编译及安装二、ofdm radar 原理讲解三、GNU Radio 实现 OFDM Radar1、官方提供的 grc①、grc 图②、运行结果 2、修改后的便于后续可实现探测和通信的 grc①、grc 图②、运行结果 四、资源自取 前言 本文使用 GNU Radio 搭建 OFDM Ra…

项目3 构建移动电商服务器集群

项目引入 经过前期加班加点地忙碌&#xff0c;我们的网站顺利上线了&#xff01;年中促销活动也如约而至&#xff0c;虽然公司全体对这次活动进行多方面地准备和“布防”&#xff0c;可是意外还是发生了。就在促销优惠购物活动的当天&#xff0c;猛然增加的用户访问量直接导致浏…