使用python批量采集国家法律法规数据库——科学学习使用!遵守法律!绿色合规!

本文主要是介绍使用python批量采集国家法律法规数据库——科学学习使用!遵守法律!绿色合规!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 模块使用:

    • 使用Python的requests模块进行网络请求操作。
  • 目标网址:

    • 国家法律法规数据库网址
  • 实现步骤:

    1. 模拟浏览器请求:

      • 设置请求头信息模拟浏览器行为。
    2. 请求网址并循环获取数据:

      • 循环页面以获取数据,设置查询参数并使用requests.get()请求数据。
    3. 提取数据并保存文件:

      • 从返回的JSON数据提取文档ID,请求文档内容并保存为文件。

import requests# 模拟浏览器对url地址发送请求
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36'
}
# 请求网址 目录页链接
link = 'https://flk.npc.gov.cn/api/'
# for 循环页数
for page in range(1, 8):print(f'正在下载第{page}页数据:')# 查询参数p = {'page': page,'type': 'flfg','searchType': 'title;vague','sortTr': 'f_bbrq_s;desc','gbrqStart': '','gbrqEnd': '','sxrqStart': '','sxrqEnd': '','sort': 'true','size': '10','_': '1713881559870',}# 发送请求link_json = requests.get(url=link, params=p, headers=headers).json()print(link_json)# for循环遍历 提取IDfor index in link_json['result']['data']:docx_id = index['id']print(docx_id)# url地址url = 'https://flk.npc.gov.cn/api/detail'# 请求参数data = {'id': docx_id}# 发送请求response = requests.post(url=url, data=data, headers=headers)# 获取响应json数据json_data = response.json()# 解析数据# 提取文档名称title = json_data['result']['title']down_load = 'https://wb.flk.npc.gov.cn' + json_data['result']['body'][0]['path']# 对下载地址发送请求,获取二进制数据content = requests.get(url=down_load, headers=headers).content# 提取文件格式name = down_load.split('.')[-1]# 保存数据with open('content\\' + title + '.' + name, mode='wb') as f:# 写入数据f.write(content)print(down_load)

科学学习使用!遵守法律!热爱祖国热爱党!

这篇关于使用python批量采集国家法律法规数据库——科学学习使用!遵守法律!绿色合规!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

MySQL 衍生表(Derived Tables)的使用

《MySQL衍生表(DerivedTables)的使用》本文主要介绍了MySQL衍生表(DerivedTables)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学... 目录一、衍生表简介1.1 衍生表基本用法1.2 自定义列名1.3 衍生表的局限在SQL的查询语句select

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

一文全面详解Python变量作用域

《一文全面详解Python变量作用域》变量作用域是Python中非常重要的概念,它决定了在哪里可以访问变量,下面我将用通俗易懂的方式,结合代码示例和图表,带你全面了解Python变量作用域,需要的朋友... 目录一、什么是变量作用域?二、python的四种作用域作用域查找顺序图示三、各作用域详解1. 局部作

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

MySQL分区表的具体使用

《MySQL分区表的具体使用》MySQL分区表通过规则将数据分至不同物理存储,提升管理与查询效率,本文主要介绍了MySQL分区表的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、分区的类型1. Range partition(范围分区)2. List partition(列表分区)3. H

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件