当前位置: 首页 > news >正文

如何做好网站盘锦网站建设策划

如何做好网站,盘锦网站建设策划,深圳专业网站建设平台,永久免费浏览网页软件免责声明 本教程仅用于教育目的,演示如何合法获取公开专利数据。在实际操作前,请务必: 1. 仔细阅读目标网站的robots.txt文件和服务条款 2. 控制请求频率,避免对服务器造成负担 3. 仅获取和使用公开数据 4. 不用于商业用途或…

免责声明

本教程仅用于教育目的,演示如何合法获取公开专利数据。在实际操作前,请务必:

1.  仔细阅读目标网站的robots.txt文件和服务条款
2.  控制请求频率,避免对服务器造成负担
3.  仅获取和使用公开数据
4.  不用于商业用途或大规模抓取

本次教学网站:aHR0cDovL2VwdWIuY25pcGEuZ292LmNuL0FkdmFuY2Vk(请自行base64解密)。

本次实现需求:1.查询某固定日期之后的所有专利 2.将获取到的专利数据写入xlsx文件

本次使用语言:python

实现思路:DrissionPage实现自动化操作网页,向公布开始日期的输入框插入需要查询的日期(若需要其他查询条件思路与其基本一致),点击查询按钮跳转至专利数据列表页面,获取总计页面数量,循环总计页面数量,自动获取并向xlsx文件写入每一页数据,如果当前页不是最后一页,点击下一页继续获取数据并完成写入。

程序输出结果:

完整代码

from DrissionPage import ChromiumOptions, ChromiumPage
import re
from bs4 import BeautifulSoup
from DataRecorder import Recorderco = ChromiumOptions()
co.headless()  # 无头模式
# 创建页面对象,并启动浏览器
page = ChromiumPage(co)
# 跳转到页面
page.get('http://epub.cnipa.gov.cn/Advanced')
start_date = '2022.10.18'
r = Recorder(f'专利网_{start_date}.xlsx')
r.set.head(['标题', '申请公布号', '申请公布日', '申请号', '申请日', '申请人', '发明人', '地址', '分类号', '摘要'])
r.record()def save_data(datalist):r.add_data(datalist)r.record()# 定位到开始日期文本框,获取文本框元素
ele = page.ele('#pd_begin')
# 输入对文本框输入开始日期
ele.input(start_date)
# 定位到页面文本为“查询”的按钮并点击
search_button = page.ele('.icon-sea')
search_button.click()
page.wait(5)total_element = page.ele('css:.page_total')
total_content = total_element.text
# 正则提取页数
page_num = re.search(r'共 (\d+) 页', total_content).group(1)
print(f'总页数:{page_num}')  # 输出:总页数:****now_page = 1
max_page = int(page_num)
data_list = []def get_data():res = page.ele('#result')items = res.eles('css:.item')list_arr = []for item in items:title = item.ele('.title').textpublication_num = item.ele('.info').eles('tag:dd')[0].textpublication_date = item.ele('.info').eles('tag:dd')[1].textapplication_num = item.ele('.info').eles('tag:dd')[2].textapplication_date = item.ele('.info').eles('tag:dd')[3].textapplicant = item.ele('.info').eles('tag:dd')[4].textinventor = item.ele('.info').eles('tag:dd')[5].textaddress = item.eles('.intro')[0].eles('tag:dd')[0].texttype_num = item.eles('.intro')[1].eles('tag:dd')[0].textdes = item.eles('.intro')[2].eles('tag:dd')[0].textif item.eles('.intro')[2].eles('tag:dd')[0].ele('tag:p'):des_dom = item.eles('.intro')[2].eles('tag:dd')[0].ele('tag:p').htmlsoup = BeautifulSoup(des_dom, 'html.parser')for tag in soup.find_all(class_=['point', 'open j-open-alltxt']):tag.decompose()des = soup.get_text(strip=True).replace('\n', ' ')arr = [title, publication_num, publication_date, application_num, application_date, applicant, inventor,address, type_num, des]print(arr)list_arr.append(arr)save_data(list_arr)def get_page_data():if now_page == 1:get_data()else:next_button = page.ele('.next_page')page.wait(2)next_button.click()page.wait(3)get_data()for i in range(1, max_page + 1):now_page = iprint(f'正在获取第{i}页数据')get_page_data()page.quit()

http://www.dtcms.com/a/578201.html

相关文章:

  • k8s kubelet Nameserver limits exceeded
  • 供暖季技术实战:益和热力用 TDengine 时序数据库破解热力数据处理难题
  • 蔡甸建设局网站jsp源码做网站
  • AI代码开发宝库系列:Dify本地化部署和应用
  • 推荐高性能MCU微控制器N32H785EC(MCU单片机特征)
  • Bayes/BO-CNN-GRU、CNN-GRU、GRU三模型多变量回归预测Matlab
  • 免费做国际贸易的网站打广告专用图
  • 云南固恒建设集团有限公司网站wordpress主题结合
  • 深度与高程计算:OpenGL RTT技术解析
  • Rust 练习册 10:多线程基础与并发安全
  • 电子商务网站建设评估工具办公宽带多少钱一年
  • Razor VB 变量详解
  • 输入一个故事主题,使用大语言模型生成故事视频【视频中包含大模型生成的图片、故事内容,以及音频和字幕信息】
  • 英文网站首页优化中信建设有限责任公司招投标
  • 前端浏览器设置input不记住密码、不自动填充密码,举例jquery
  • 二级域名免费申请网站环球资源网站网址
  • 网站建设要学多久网站建设与管理 市场分析
  • 潍坊网站建设排行房地产销售人员网站怎么做
  • 如何为你的项目选择合适的加速度计?
  • 【MySQL】索引 知识总结
  • 拍卖公司资质的办理流程
  • 北京医院网站建设wordpress二次开发视频教程
  • 如何在淘宝网做自己的网站制作网站规划书
  • Rust 练习册 16:Trait 作为返回类型
  • LeetCode热题100--46. 全排列--中等
  • 有域名了怎么做网站冷水滩网站建设
  • 1.7 微调方法比较(LoRA、P-Tuning v2、Adapter):构建高效定制化AI模型
  • DO后缀命名在DDD(领域驱动设计)的错误应用
  • 中国平湖首页规划建设局网站电子商务网站建设课程设计总结
  • 数据结构系列之快速排序