python【爬虫】【批量下载】年报抓取

python年报爬取更新


本人测试发现,ju chao网的年报爬取距离我上一篇博客并没有啥变化,逻辑没变,应好多朋友的需要,这里补充代码

import json
import osimport requestsweb_url = '改成网站的域名,因为csdn屏蔽'
def load_json():with open("./stock.json", encoding="utf-8", mode="r") as f:return json.loads(f.read())def query_report(_stock, time_span):headers = {'Accept': '*/*','Accept-Language': 'zh-CN,zh;q=0.9','Cache-Control': 'no-cache','Connection': 'keep-alive','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36',}data = {'pageNum': '1','pageSize': '30','column': 'szse','tabName': 'fulltext','plate': '','stock': f'{_stock["code"]},{_stock["orgId"]}','searchkey': '','secid': '','category': 'category_ndbg_szsh','trade': '','seDate': time_span,'sortName': '','sortType': '','isHLtitle': 'true',}response = requests.post(web_url+'/new/hisAnnouncement/query',headers=headers,data=data,)return response.json()def download_pdf(d_url, _bank, _file_name):resp = requests.get(web_url + d_url, verify=False)if not os.path.exists(os.path.join(os.path.abspath("./"), _bank)):os.mkdir(os.path.join(os.path.abspath("./"), _bank))with open(f"./{_bank}/{_file_name}.pdf", mode="w", encoding="utf-8") as f:f.write(resp.text)def name_to_stock(_bank):for item in stock_dic["stockList"]:if item["zwjc"] == _bank:return itemif __name__ == '__main__':stock_dic = load_json()bank_list = ["平安银行", "深南电A", "天健集团"]for bank in bank_list:stock = name_to_stock(bank)if not stock:print("[x]未找到该企业")exit(0)query_result = query_report(_stock=stock, time_span='2022-12-26~2023-06-27')print(f"[*]搜索【{bank}】找到:")for res in query_result['announcements']:print(f"\t[*]{res['adjunctUrl']} {res['announcementTitle']}", end="")download_pdf(res['adjunctUrl'], bank, res['announcementTitle'])print(f"\r\t[*]{res['adjunctUrl']} {res['announcementTitle']}  ...........   ok")print("下载完毕~")

运行结果:

pCa99hR.png

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

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

相关文章

HOT20-旋转图像

leetcode原题链接:旋转图像 题目描述 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入&am…

Android JetPack 深入分析ViewModel源码

文章目录 前言源码分析ViewModel是如何创建的?ViewModelProvider(this)做了什么?小结 get(MyViewModel::class.java)做了什么?小结 ViewModel是如何实现配置更改后数据恢复的?整体时序图 结语 前言 本文主要分析ViewModel相关源码…

JUC之LockSupport和中断

文章目录 1 线程中断机制1.1 什么是线程中断机制1.2 三大中断方法1.3 如何中断运行中的线程1.3.1 通过volatile变量实现1.3.1 通过AtomicBoolean实现1.3.1 通过interrupt和isInterrupted api实现 2 LockSupport2.1 为什么会出现LockSupport2.2 两道面试题 参考材料 1 线程中断机…

移动隔断屏风墙,无地轨设计,空间灵活应用

移动隔断屏风墙是一种非常适合办公室的设计选择,它可以提供灵活的办公空间布局,并且无地轨设计可以避免地面安装轨道,给空间带来更大的自由度。以下是一些关于移动隔断屏风墙的特点和设计建议: 1. 灵活应用:移动隔断屏…

JavaScript进阶----《getter 和 setter 是什么》

前言: 这两个属性在学习前端的时候看到过,但是由于项目中没有用到过,所以一直没有细致的了解。今天 review 同事代码的时候,遇到了这个写法,看了半天也不知道如何处理。再不学习真的以后连别人的代码都不知道什么意思了…

百度智驾,与车路协同说「再见」

作者 | 魏启扬 来源 | 洞见新研社 在经历了裁员,全员停发年终奖之后,百度对智能交通事业部(ACE)的治理还在继续。 不久前,有媒体爆料称,百度已经将智能交通事业部(ACE)从原来的智能…

微信小程序——分页组件的创建与使用

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

C++类与对象(默认成员函数之拷贝构造函数)

接前几次的类与对象的默认函数的知识点,下来面是默认成员函数中的拷贝构造函数。是的,它的名字是拷贝构造函数,他其实也是一种构造函数,为什么呢?接下来你就知道了,我们直接看看代码,如下&#…

kafka入门,发送原理和生产者重要参数(三)

发送原理 在消息发送过程中,涉及两个线程,main线程和Sender线程。在main线程中创建了一个双端队列,RecordAccumulator,Sender过程不断从RecordAccumulator中拉取消息发送到Kafka Broker batch size:只有数据累计到batch.size之后&#xff0…

C#winform listBox组件批量删除

修改listBox组件属性:可以选中多个板坯号 选中板坯列表,在界面上点击删除按钮,触发删除方法deleteList: private void deleteList() { ListBox.SelectedIndexCollection sic listBoxProducts.SelectedIndice…

虹科分享|如何防范MOVEit transfer漏洞|高级威胁防御

美国网络安全和基础设施安全局(CISA)承认,它正在向几个联邦机构提供支持,这些机构在Progress(前身为IpSwitch)MOVEit传输解决方案中暴露出漏洞后被攻破。根据CISA发布的一份警报和网络安全公告,CL0P勒索软件团伙一直在积极利用漏洞进行数据外…

react中基于腾讯地图的地图选点,地址搜索逆向定位获取经纬度

react中基于腾讯地图的地图选点,地址搜索逆向定位获取经纬度 效果示例图地图组件tencentMap/index.jsx样式map.scss 使用案例 效果示例图 地图组件tencentMap/index.jsx import { useEffect, useRef, useState } from "react"; import "./map.scss&…