美文网首页
3、Selenium -- javascript

3、Selenium -- javascript

作者: 波罗的海de夏天 | 来源:发表于2020-04-24 14:40 被阅读0次

javascript 可以用来控制DOM文档中的“节点与属性”;

  1. 关键代码示例:
js = '$("input[id=train_date]").removeAttr("readonly")'
    driver.execute_script(js)
  1. Demo案例:
# -*- coding:utf-8 -*-

from selenium import webdriver
import time
import os

# 查询车票
def search_12306():
    # 起始站
    from_element = driver.find_element_by_id('fromStationText')
    time.sleep(1)
    from_element.click()
    time.sleep(1)
    from_element.send_keys('北京')
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="北京南"]').click()
    # 到达站
    to_element = driver.find_element_by_id('toStationText')
    time.sleep(1)
    to_element.click()
    time.sleep(1)
    to_element.send_keys('上海')
    time.sleep(1)
    driver.find_element_by_xpath('//*[@id="citem_1"]').click()
    # 日期
    js = '$("input[id=train_date]").removeAttr("readonly")'
    driver.execute_script(js)
    date_element = driver.find_element_by_id('train_date')
    time.sleep(1)
    date_element.click()
    time.sleep(1)
    date_element.clear()
    time.sleep(1)
    date_element.send_keys('2020-05-01')
    time.sleep(1)
    # 收起时间窗
    driver.find_element_by_class_name('form-label').click()
    time.sleep(1)
    # 查询
    driver.find_element_by_id('search_one').click()


if __name__ == '__main__':
    # 驱动Chrome浏览器
    driver = webdriver.Chrome('/Users/****/Desktop/git/AI_Lesson/chromedriver')
    driver.get('https://www.12306.cn/index/')
    # 查询车票
    search_12306()
    # 关闭浏览器
    time.sleep(5)
    driver.quit()




相关文章

网友评论

      本文标题:3、Selenium -- javascript

      本文链接:https://www.haomeiwen.com/subject/xgrfwhtx.html