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

网页和网站wordpress 相关产品

网页和网站,wordpress 相关产品,海口发布微信公众号,分享型网站一. 内容简介 python爬取robomaster论坛数据#xff0c;作为后端数据 二. 软件环境 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3代码 三.主要流程 3.1 接口分析 # 接口分析 # 全部数据 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63 2…一. 内容简介 python爬取robomaster论坛数据作为后端数据 二. 软件环境 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3代码 三.主要流程 3.1 接口分析 # 接口分析 # 全部数据 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63 20 # 机械设计 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63filtertypeidtypeid11 20 # 嵌入式 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63filtertypeidtypeid12 20 # 视觉算法 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63filtertypeidtypeid13 9 # 其他 # https://bbs.robomaster.com/forum.php?modforumdisplayfid63filtertypeidtypeid14 # 分页 # filtertypeidpage33.2 通过selenium爬取网页结构 大疆这个网站是直接在服务端渲染好的只能从结构里面爬了不能直接拿接口数据了content是整个网页结构 import urllib.request from lxml import etree import json from selenium.webdriver.common.by import By from selenium import webdriver import random import time import pyautogui from datetime import datetime import random def seleniumRequest(url,chrome_path,waitTime): options webdriver.ChromeOptions()options.add_experimental_option(excludeSwitches, [enable-automation])options.add_experimental_option(useAutomationExtension, False)# 谷歌浏览器exe位置options.binary_location chrome_path# 是否要启动页面# options.add_argument(--headless) # 启用无头模式# GPU加速有时候会出bugoptions.add_argument(--disable-gpu) # 禁用GPU加速options.add_argument(--disable-blink-featuresAutomationControlled)driver webdriver.Chrome(optionsoptions)driver.execute_cdp_cmd(Page.addScriptToEvaluateOnNewDocument,{source: Object.defineProperty(navigator, webdriver, {get: () undefined})})# 启动要填写的地址,这就启动浏览器driver.get(url)# 这是关闭浏览器# 等待页面加载可以根据实际情况调整等待时间driver.implicitly_wait(waitTime)# 获取完整页面结构full_page_content driver.page_source# 关闭浏览器driver.quit()return full_page_content # # 处理完整页面结构 # print(full_page_content) url https://bbs.robomaster.com/forum.php?modforumdisplayfid63page2 print(url)chrome_path rC:\Program Files\Google\Chrome\Application\chrome.exe waitTime 8 # 获取网页结构 # 通过selenium调用浏览器访问 content seleniumRequest(url,chrome_path,waitTime) print(content)3.2 从网页结构中爬出数据存入json文件中 import random from datetime import datetime, timedeltadef generate_random_date(start_date, end_date):random_days random.randint(0, (end_date - start_date).days)random_date start_date timedelta(daysrandom_days)return random_date.strftime(%Y-%m-%d)start_date datetime(2021, 1, 1) end_date datetime(2023, 12, 31)# 给html变成tree用于xpath解析用 tree etree.HTML(content) # 改进的XPath表达式选择你感兴趣的div元素 # 解析对应数据 contents tree.xpath(//*[starts-with(id, normalthread)])img contents[0].xpath(.//*[idaaa]//img/src)baseurl https://bbs.robomaster.com/lists[] id 1 for index, url in enumerate(contents):imgurl contents[index].xpath(.//*[idaaa]//img/src) imgurl baseurl imgurl[0]all contents[index].xpath(.//p//a//text())url contents[index].xpath(.//p//a/href)url baseurl url[1]# 题目title all[1]end_index title.find(】)title all[1][end_index1:]end_index 0if title None:continue# 作者name all[2]if 作者 not in name:continue# 查看view random.randint(1000, 50000)# 评论comment all[3]if 回复 not in comment:continue# 时间time generate_random_date(start_date, end_date)# print(index,url)item {id: id,imgurl: imgurl,title:title,name:name,view:view,comment:comment,time:time,type:1,url: url}lists.append(item)id id 1 json_data json.dumps(lists, indent4)# 将JSON数据写入文件 with open(data.json, w) as json_file:json_file.write(json_data) print(JSON数据已保存到文件)3.4 json存入数据库中 import json import mysql.connector# 读取JSON文件 with open(data.json, r) as file:data json.load(file)# 连接到MySQL数据库 conn mysql.connector.connect(hostlocalhost,port3306, # MySQL默认端口号userroot,password1234qwer,databasecompetitionassistant )cursor conn.cursor()# 创建表如果不存在的话并清空表数据# item {# id: id,# imgurl: imgurl,# title:title,# name:name,# view:view,# comment:comment,# time:time,# type:1# }cursor.execute( CREATE TABLE IF NOT EXISTS form_list (id INT AUTO_INCREMENT PRIMARY KEY,imgurl VARCHAR(128),title VARCHAR(128),name VARCHAR(64),view VARCHAR(16),comment VARCHAR(16),time VARCHAR(16),type INT,url VARCHAR(128) ) ) # 先清空一下表cursor.execute(TRUNCATE TABLE form_list) # 将数据插入数据库 for item in data:# print(item)# cursor.execute(# INSERT INTO index_img (img_url, prod_id, seq, status, create_time, update_time)# VALUES (%s, %s, %s, %s, %s, %s)# , (item[img_url], item[prod_id], item[seq], item[status], item[create_time], item[update_time]))sql_statement fINSERT INTO form_list (imgurl, title, name, view, comment, time, type, url)VALUES ({item[imgurl]}, {item[title]}, {item[name]}, {item[view]}, {item[comment]}, {item[time]}, {item[type]}, {item[url]})print(sql_statement)cursor.execute(sql_statement)print() # 提交更改并关闭连接 conn.commit() conn.close() 3.4 结果
http://www.sadfv.cn/news/9904/

相关文章:

  • 无锡餐饮网站建设搜索引擎调词软件
  • 网站建设程序做哪些个人特种证件查询网站
  • 购物网站建设怎么样济南市建设银行网站
  • 建设广州公司网站wordpress装在根目录文件夹中_如何通过域名直接访问?
  • 什么网站建设德国著名的外贸公司地址
  • 怎样做团购网站没有公司地址怎么注册公司
  • 专业苏州网站建设公司哪家好免费资源源码网站
  • 英文网站注册迁西网站定制
  • 值得浏览的国外网站大连网站建设流程图
  • 网站的数据运营怎么做制作网络网站
  • 响应式网站制作wordpress js加载位置
  • 电子商务网站建设与管理期末答案上海备案证查询网站
  • 做线上网站需要钱吗食品网站建设的目的
  • 临沭有做网站的吗深圳设计公司排名深圳市广告公司
  • 网站设计优化永久免费手机网站自助建站
  • 网站功能价格表谢岗镇仿做网站
  • 网站设计的技巧织梦批量修改网站源代码
  • wordpress总是跳出淘宝排名优化公司口碑哪家好
  • 做暧暧视频网站下载广告策划案
  • 网站用什么主机网站建设 招聘需求
  • 京东网站建设的主旨贝锐免费域名
  • 微网站搭建网站怎么做301跳转
  • 网站建设初学软件网络舆情处置的五个步骤
  • 2022中文无字幕入口网站wordpress ios 默认
  • 有什么做ppt参考的网站wordpress模板转为emlog
  • 茂名一站式网站建设报价wordpress博客手机新闻模板
  • 网站建设给客户看的ppt模板如何申请一个网址
  • 网站建设需要步骤wordpress菜单显示在哪里
  • wordpress 企业站模板怎么样购买服务器建设网站
  • 网页网站设计培训班seo全称是什么意思