crawler for one two three zero six
发布日期:2021-05-14 05:43:45 浏览次数:25 分类:精选文章

本文共 4910 字,大约阅读时间需要 16 分钟。

���������Python������12306������������

���������������������������������������������������������������12306���������������������������������������������������Python������������������������������������������������������������������������������������������ ���������������.api />

���������������������������������������������

���������12306���������������������������������������������������������������������������������������Python���urllib2���������������������������������������������������������������������������������������������������������������������������������������������������������

���������������������������������������������

  • ���������������������������12306���������������������������������������������������������
  • ������������������������������������������������������������Chrome������F12���������������������������������������������������������
  • ������������������������������������������������������������������������������������������������������������������������������������������������������������������������
  • ������������������������������������

    ���������������������������������������������������������JSON������������������������������������������������������������������������������������

    ������JSON������

    import urllib2
    import json
    import ssl
    ssl._create_default_https_context = ssl._create_unverified_context
    def get_train_info(cg_key, train_date):
    req = urllib2.Request(
    f'https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date={train_date}&leftTicketDTO.from_station=CG{cg_key}&leftTicketDTO.to_station=KQ'
    )
    req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36')
    response = urllib2.urlopen(req)
    html = response.read()
    data = json.loads(html)
    return data['data']['result']

    ������������������

    def show_train_info():
    train_info = get_train_info('0', '2017-07-10')
    for idx, train in enumerate(train_info):
    if idx > 10:
    break
    print(f'[{idx}] {train[1]} {train[8]} {train[9]} {train[3]}')
    print(' '.join(train[5:25]))
    return
    show_train_info()

    ������������������������������

    ���������������������������������������������������������������������������������������������������������������������������������������������������������������������

    ������������

    • ���������������������������������������������������������
    • ������������������������������������������������������������������������
    • ���������������������������������������������������������������
    • ���������������������������therossemble������������������������������

    ������������������

    from selenium import WebDriverWait
    from selenium.webdriver.chrome.options import Options
    from selenium.webdriver.common.keys import Keys
    import time
    def get_train_info(
    Train_number,
    departure_station,
    arrival_station,
    date
    ):
    desired = {
    'appId': 'ID123',
    'qq': 'QQ123',
    'terminalType': 'PC',
    'terminalModel': 'P.C computers',
    'deviceType': 'Desktop',
    'cacheCapacity': '128M',
    'lang': 'zh_cn'
    }
    options = Options()
    options.add_experimental_option('ignore.gpu') = True
    options.add_experimental_option('headless') = True
    driver = webdriver.Chrome(options=options)
    driver.implicitly_wait(5)
    driver.get('https://kyfw.12306.cn/otn/query/ train')
    try:
    trade_no = time.strftime('%Y%m%d') + '-'
    while True:
    trade_no += str(ord(char))
    try:
    order = driver.find_element(By.XPATH, '//button[@id="query_order"]')
    order.click()
    alert = driver.switch_to.alert
    alert.accept()
    break
    except:
    time.sleep(2)
    sleep(10)
    updates = driver.find_element(By.XPATH, '//div[@id="checkUpdate"]')
    updates.click()
    sleep(5)
    finally:
    driver.quit()

    ���������������������

    ���������������������������������������������������������������������������������

    • ������������������������������������������������������������
    • ���������������������������������������������������������
    • ���������������������������������������������������������������������

    ������������

    ���������������������12306���������������������������������������������������������������������������������������������������������������������������������������������wargs api���������������������

    ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

    ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

    上一篇:揭开阿里流计算技术的神秘面纱
    下一篇:HTML5菜单栏特效

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2025年04月22日 01时55分14秒