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

网站模板尺寸云安区学校网站建设统计表

网站模板尺寸,云安区学校网站建设统计表,wordpress 文章添加字段,网络架构拓扑安装 web driver#xff1a; 使用 driver 前#xff0c;需要下载与浏览器版本相对应的 driver。如要在 Chrome 浏览器上操作#xff0c;就要下载Chrome Driver。 几个常用浏览器的参考和下载地址#xff1a; Edge Driver#xff1a;https://developer.microsoft.com/en…安装 web driver 使用 driver 前需要下载与浏览器版本相对应的 driver。如要在 Chrome 浏览器上操作就要下载Chrome Driver。 几个常用浏览器的参考和下载地址 Edge Driverhttps://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/ Chrome Driverhttps://sites.google.com/chromium.org/driver/ https://googlechromelabs.github.io/chrome-for-testing/ Firefox Driverhttps://github.com/mozilla/geckodriver/releases 这里使用Chrome浏览器下载Chrome Driver。 下载并安装完成后将.exe文件拷贝到 python.exe 同级的目录下。 引入将要使用到的库 from selenium import webdriver# By 里定义了许多常量用来标识以何种形式来查找元素如 By.CLASS_NAME 使用类名来查找 from selenium.webdriver.common.by import By# 主要用来等待确保页面加载、更新完成 import time 初始化驱动器 driver webdriver.Chrome()# 如果没有将driver.exe放到环境变量或python.exe同级目录下则要参数中指定 # driver webdriver.Chrome(F:/chromedriver.exe) 打开Chrome浏览器访问指定的网站 driver.get(http://www.cwl.gov.cn/fcpz/yxjs/ssq/) time.sleep(3) # 等待3秒再继续确保页面加载完成 然后将窗口最大化 driver.maximize_window() 观察页面和控制台锁定目标阳光开奖的特征。 找到并点击 阳光开奖 链接继续等待3秒确保页面加载更新完成 # find_element 返回的是第一个匹配的元素 # By.XPATH 使用类似 xPath 的语法来定位页面的元素, 第二个参数是对应的 xPath 内容 driver.find_element(byBy.XPATH, value//div[data-aliasygkj]).click() time.sleep(3) 此时浏览器会打开一个新的标签页我们需要将 driver 定位到新的标签页中 # 获取当前打开的几个窗口返回的是一个列表每个元素是每个标签页的标识 windows driver.window_handles# 切换到最新打开的窗口保证后面能正常获取页面中的元素 driver.switch_to.window(windows[-1]) 结合控制台和页面找到 往期开奖公告 的特征标识找到该元素并点击 # 点击往期开奖公告 # By.PARTIAL_LINK_TEXT 使用链接的文本内容来进行搜索后面的值是目标元素的innerText driver.find_element(byBy.PARTIAL_LINK_TEXT, value往期开奖公告).click() time.sleep(3) 然后尝试在界面执行一个脚本滚动到页面底部 # 滚动到最底部不是必须 # By.CLASS_NAME 使用类名来查找底部的图片 第二个参数是对应的类名 target driver.find_element(byBy.CLASS_NAME, valuefooter-logo)# 对于指定的元素执行脚本 这里的arguments[0]是第二个参数target driver.execute_script(arguments[0].scrollIntoView({behavior:smooth}), target) time.sleep(2) 然后找到下一页的按钮并点击进入下一页 # 下一页 # By.ID 指定使用 id 属性来查找元素第二个参数是id值 # 这里先试用id来找到祖父节点顺着该节点再继续往下找 paging driver.find_element(byBy.ID, valuepaging) paging.find_element(byBy.CLASS_NAME, valuelayui-laypage-next).click() time.sleep(2) 在当前界面的右上角有搜索功能尝试自动输入指定内容并搜索 # 在右上角的输入框中输入内容 使用ID来表示元素 # send_keys 在输入框中键入指定的内容即输入 2023-5 driver.find_element(By.ID, searchInput).send_keys(2023-5) time.sleep(2)# 点击搜索按钮 先找父级在从父级找子元素 btnParent driver.find_element(By.CLASS_NAME, input-group-btn) btnParent.find_element(By.CLASS_NAME, btn-default).click() time.sleep(2) 点击搜索后会新创建一个标签页此时需要更新 driver 到新的标签页面。 # 及时切换窗口 windows driver.window_handles driver.switch_to.window(windows[-1]) 点击第一个结果 # 点击第一个结果 items driver.find_elements(By.CLASS_NAME, con-item) items[0].find_element(By.CLASS_NAME, black).click() 点击后同样会新开一个标签页此时我们把当前这个搜索结果的标签页关闭然后跳转到新的标签页中 # 关闭当前标签页并切换到新的窗口 driver.close() windows driver.window_handles driver.switch_to.window(windows[-1]) time.sleep(2) 如果要返回历史开奖结果页面 # 返回开奖历史记录 driver.switch_to.window(windows[-2]) 如果想给开奖结果截一个图元素截图 # 指定元素截图只截图当前浏览器窗口可见部分 main driver.find_element(By.CLASS_NAME, main) main.screenshot(./caipiao_1.png) # 命名并保存 然后可以在当前的目录下查看 caipiao.png 图片 完整程序代码 from selenium import webdriver from selenium.webdriver.common.by import By import time# 初始化驱动器 driver webdriver.Chrome() # 如果没有将driver.exe放到环境变量或python.exe同级目录下则要参数中指定 # driver webdriver.Chrome(F:/chromedriver.exe)# 访问指定网站 driver.get(http://www.cwl.gov.cn/fcpz/yxjs/ssq/) driver.maximize_window() # 最大化窗口 time.sleep(3)# 点击阳光开奖 使用Xpath来搜索 driver.find_element(byBy.XPATH, value//div[data-aliasygkj]).click() time.sleep(3)# 获取当前打开了几个窗口 windows driver.window_handles # 会打开新的标签页因此需要切换到最新打开的窗口保证后面能正常获取元素 driver.switch_to.window(windows[-1])# 点击往期开奖公告 使用链接的文本内容来进行搜索 driver.find_element(byBy.PARTIAL_LINK_TEXT, value往期开奖公告).click() time.sleep(3)# 滚动到最底部 target driver.find_element(byBy.CLASS_NAME, valuefooter-logo) # 对于指定的元素执行脚本 这里的arguments[0]是第二个参数target driver.execute_script(arguments[0].scrollIntoView({behavior:smooth}), target) time.sleep(2)# 下一页 先试用id来找到祖父节点顺着该节点再继续往下找 paging driver.find_element(byBy.ID, valuepaging) paging.find_element(byBy.CLASS_NAME, valuelayui-laypage-next).click() time.sleep(2)# 在右上角的输入框中输入内容 driver.find_element(By.ID, searchInput).send_keys(2023-5) time.sleep(2)# 点击搜索按钮 btnParent driver.find_element(By.CLASS_NAME, input-group-btn) btnParent.find_element(By.CLASS_NAME, btn-default).click() time.sleep(2)# 及时切换窗口 windows driver.window_handles driver.switch_to.window(windows[-1])# 点击第一个结果 items driver.find_elements(By.CLASS_NAME, con-item) items[0].find_element(By.CLASS_NAME, black).click()# 关闭当前标签页并切换到新的窗口 driver.close() windows driver.window_handles driver.switch_to.window(windows[-1]) time.sleep(2)# 返回开奖历史记录 driver.switch_to.window(windows[-2])# 指定元素截图只截图当前浏览器窗口可见部分 main driver.find_element(By.CLASS_NAME, main) main.screenshot(./caipiao_1.png)input() # 保持程序运行状态浏览器不会被关闭 获取前三页的彩票中奖号码并写入到 Excel 中 需要安装 xlwings 来操作 Excelpip install xlwings from selenium import webdriver from selenium.webdriver.common.by import By from time import sleep import xlwings as xwdriver webdriver.Chrome() driver.get(http://www.cwl.gov.cn/ygkj/kjgg/) sleep(2)driver.find_element(By.CLASS_NAME, ygkj_wqkjgg_nav).click() sleep(2)# 保存结果 days [] qiu_list []def get_data(total_pages, current_page, file_name data):tbody driver.find_element(By.TAG_NAME, tbody)trs tbody.find_elements(By.TAG_NAME, tr)for tr in trs:tds tr.find_elements(By.TAG_NAME, td)days.append(tds[1].text)qiu_items tr.find_elements(By.CLASS_NAME, qiu-item)nums []for item in qiu_items:nums.append(item.text)qiu_list.append(nums)# 递归调用if current_page total_pages:# 下一页driver.find_element(By.CLASS_NAME, layui-laypage-next).click()get_data(total_pages, current_page 1)else:driver.quit() # 停止驱动器关闭网页# 创建一个不显示、不添加新的工作簿的 Excel 应用程序对象app xw.App(visibleFalse, add_bookFalse)# 创建了一个新的工作簿对象并将其赋值给 wb 变量。wb app.books.add()# 获取第一张表格sheet_1 wb.sheets[sheet1]sheet_1[A1].value 时间 # 设置A1单元格的内容for i in range(1, 7): # 设置 B1 ~ H1的内容sheet_1[f{chr(ord(A) i)}1].value f红{i}sheet_1[f{chr(ord(A) 7)}1].value 蓝for i in range(len(days)): # 填写内容sheet_1[fA{2 i}].value days[i]sheet_1[fB{2 i}:{chr(ord(B) 7)}{2 i}].value qiu_list[i]wb.save(f./{file_name}.xlsx) # 保存xlsxwb.close() # 关闭该工作簿对象app.quit() # 关闭应用程序print(successful.)if __name__ __main__:get_data(total_pages3, current_page1)参考 [1] Selenium Python 教程 - 知乎 [2] Python操作Excel的Xlwings教程一 - 知乎 [3] xlwings让excel飞起来 [4] Python 自动化操作 Excel 看这一篇就够了 - 知乎 [5] 定位策略 | Selenium
http://wiki.neutronadmin.com/news/275767/

相关文章:

  • 湖南沙坪建设集团有限公司网站大学学部网站建设工作
  • 政务咨询投诉举报网站建设无锡的网站建设公司
  • 响应式网站框架不用下载qq在线qq登录聊天
  • 网站开发语言总结有哪些中国传统美食网页制作素材
  • 怎么做网站的排名网站开发架构文档
  • 网站开发 安全验证南通做网站公司
  • 深圳做网站推广的公司网站建设的可行性分析报告
  • 东莞网站制作有名 乐云践新crm系统的销售管理功能包括
  • 昆明网站优化排名推广新手做网站需要什么
  • 南宁网站运营哪家好宝安在深圳算什么档次
  • 百度收录最快的网站手机怎么上wap网站
  • 广州 seo的网站电商seo推广
  • 网站网络营销阿里云自助建站教程
  • 营销型网站系统学ps有用还是网页制作
  • 网站建设 目的图片下载 wordpress
  • 福州网站免费制作微信接口文档
  • 网站下载系统如何做系统怎么进入网站后台图片
  • 缩短链接网站阿里巴巴专门做外贸的网站
  • 凡科网做的网站做网站要不要35类商标
  • 公司网站建设费用包括哪些加盟产品网站建设方案
  • 有专门做美发的网站吗网站文字不能编辑器
  • 成都建网站公司电话如何搭建 seo网站
  • 营销型网站建设思路网站编程设计方向
  • 网站开发技术部经理素质模型策划公司排名
  • 石龙镇网站建设怎么做装修网站平台
  • 建设中心小学网站制作好网站怎么导入
  • 大网站服务器维护费用怎么在id导入wordpress
  • 制作网站软件网站抖音账号权重查询
  • 注册网站有什么用网站源码建站视频
  • 邢台做网站优化价格优秀网页欣赏