很长时间没有补充selenium 的脚本了,今天有小朋友问我,如何定位分页。
告诉完,索性把代码贴出来。
>>> url,填写自己项目中的url地址即可
上代码:
# -*- coding: utf-8 -*- """ @ auth : carl_DJ @ time : 2020-5-21 """ from selenium import webdriver from selenium.webdriver.common.by import By import time #不打开浏览器运行 option = webdriver.ChromeOptions() option.add_argument('headless') driver = webdriver.Chrome(chrome_options=option) url = "http://填写项目的url地址" driver.get(url) #登录系统 driver.find_element(By.ID,"username").clear() driver.find_element(By.ID,'username').send_keys("username") driver.find_element(By.ID,"password").clear() driver.find_element(By.ID,"password").send_keys("password") driver.find_element(By.PARTIAL_LINK_TEXT,"登录").click() time.sleep(2) #获取所有分页的数量 total_page = len(driver.find_element(By.TAG_NAME,"select").find_elements(By.TAG_NAME,"option")) print("Total page is %s "%total_page) time.sleep(2) #再次获取所有分页,并执行循环翻页操作 pages = driver.find_element(By.TAG_NAME,"select").find_elements(By.TAG_NAME,"option") for page in pages: page.click() time.sleep(2) #退出并关闭浏览器 driver.quit()
代码没有什么难度,在这里,运用了几个知识点:
1.option的 headless, 这是不打开浏览器运行脚本;
2.len()用于获取对象的个数;
3.运用到了二次定位;
4.运用for 循环来翻阅每一页。