当前位置: 首页 > 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://www.yutouwan.com/news/275767/

相关文章:

  • 用什么工具做网站视图长沙有什么好玩的地方
  • 微信与网站对接软件工程师的就业前景
  • 网站建设公司做销售好不好网站关键词快速排名优化
  • 网站专题教程php网站后台开发教程
  • 如何做英文网站外链展示型网站企业网站建设
  • 帮人做网站赚钱wordpress分类目录高亮
  • 做一个公司网站大概要多少钱线上seo关键词优化软件工具
  • 湖南省建设厅官方网站百度广告搜索引擎
  • 好点子网站建设太原网站建设杰迅
  • 做英文网站要做适合已经的咨询公司网站建设
  • 网站报错404wordpress不能发文章_只能在标题内写字
  • 阿里云服务器怎么放网站网站开发分前台后台
  • 河北邢台做网站杭州室内设计工作室
  • 云服务器建设网站教程眉山市做网站的公司
  • 怎么选择佛山网站设计建筑设计专业世界大学排名
  • 南昌专业网站排名推广在线动画手机网站模板
  • 阿里云网站建设的功能外贸产品推广网站
  • 天津市建设工程交易中心网站免费做金融网站
  • 东莞网站建设制作免费咨免费推广网址
  • 宁波网站推广渠道ps做好切片后怎么做网站
  • 成都网页设计的网站建设网站地图在线生成
  • 优秀网站开发公司成都专业制作网页的公司
  • 苏州专业网站建设开发公司建设网站费用明细
  • 关于电视剧的网站设计网页网站推广该怎么做
  • 旅游网站建设的组织性南康市建设局网站
  • 长沙专业建设网站局域网网站架设软件
  • 食品网站开发毕业设计阜城网站建设代理
  • 广昌网站建设北京外包公司名单
  • 苏州做网站公司速找苏州聚尚网络网站的设计与制作论文题目
  • 平面设计软件手机淄博抖音关键词优化