zoukankan      html  css  js  c++  java
  • python selenium 模块

    控制已打开的浏览器

    https://www.cnblogs.com/lovealways/p/9813059.html

    selenium、自动填充文本框、自动点按钮

    https://blog.csdn.net/github_26672553/article/details/78579038

    selenium driver  驱动器下载:

    http://npm.taobao.org/mirrors/chromedriver/

    获取标签属性值

    https://www.linuxhub.org/?p=3801

    from openpyxl import load_workbook
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    from openpyxl.utils import get_column_letter
    import time
    
    chrome_options = Options()
    chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
    chrome_driver = "D:Program FilesPython36Scriptschromedriver.exe"
    driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
    
    driver.get('http://search.anccnet.com/searchResult2.aspx')
    wb = load_workbook(r'C:UsersadminDesktopT1.xlsx')
    sheet = wb.get_sheet_by_name('Sheet1')
    
    for cell in list(sheet.columns)[0]:
        try:
            searchInput = driver.find_element_by_id('keyword')
            searchInput.clear()
            # searchInput.send_keys('6954767470573')
            # searchInput.send_keys('6923146102015')
            searchInput.send_keys(cell.value)
    
            button = driver.find_element_by_id('gdsBtn')
            button.click()
    
            tiaomaID4 = driver.find_element_by_class_name('p-info').find_elements_by_tag_name("a")[0].text
            changshang5 = driver.find_element_by_id('repList_ctl00_firmLink').text
            zhuangtai6 = driver.find_element_by_id('repList_ctl00_status').text[0:2]
            time.sleep(3)
            ret = driver.find_element_by_class_name('p-info').find_elements_by_tag_name("a")[0].get_attribute("href")
            driver.get(ret)
    
            name7 = driver.find_element_by_id('Att_Sys_zh-cn_141_G').text
            ename8 = driver.find_element_by_id('Att_Sys_en-us_141_G').text
            fenlei9 = driver.find_element_by_id('Att_Sys_zh-cn_22_G').text
            pinpai10 = driver.find_element_by_id('Att_Sys_zh-cn_304_G').text
            guige11 = driver.find_element_by_id('Att_Sys_zh-cn_332_G').text
            kuandu12 = driver.find_element_by_id('Att_Sys_zh-cn_101_G').text
            gaodu13 = driver.find_element_by_id('Att_Sys_zh-cn_106_G').text
            shendu14 = driver.find_element_by_id('Att_Sys_zh-cn_118_G').text
            yuanchanguo15 = driver.find_element_by_id('Att_Sys_zh-cn_74_G').text
            chandi16 = driver.find_element_by_id('Att_Sys_zh-cn_405_G').text
            zhuangpeiguo17 = driver.find_element_by_id('Att_Sys_zh-cn_171_G').text
            jibendanwei18 = driver.find_element_by_id('Att_Sys_zh-cn_107_G').text
            lingshoudanwei19 = driver.find_element_by_id('Att_Sys_zh-cn_204_G').text
            guanjianzi20 = driver.find_element_by_id('Att_Sys_zh-cn_11_G').text
            lingshoujia21 = driver.find_element_by_id('Att_Sys_zh-cn_196_G').text
    
            try:
                img = driver.find_element_by_id('imageListDiv')
            except Exception as e:
                img = ''
    
            sheet[get_column_letter(4) + str(cell.row)] = tiaomaID4
            sheet[get_column_letter(5) + str(cell.row)] = changshang5
            sheet[get_column_letter(6) + str(cell.row)] = zhuangtai6
            sheet[get_column_letter(7) + str(cell.row)] = name7
            sheet[get_column_letter(8) + str(cell.row)] = ename8
            sheet[get_column_letter(9) + str(cell.row)] = fenlei9
            sheet[get_column_letter(10) + str(cell.row)] = pinpai10
            sheet[get_column_letter(11) + str(cell.row)] = guige11
            sheet[get_column_letter(12) + str(cell.row)] = kuandu12
            sheet[get_column_letter(13) + str(cell.row)] = gaodu13
            sheet[get_column_letter(14) + str(cell.row)] = shendu14
            sheet[get_column_letter(15) + str(cell.row)] = yuanchanguo15
            sheet[get_column_letter(16) + str(cell.row)] = chandi16
            sheet[get_column_letter(17) + str(cell.row)] = zhuangpeiguo17
            sheet[get_column_letter(18) + str(cell.row)] = jibendanwei18
            sheet[get_column_letter(19) + str(cell.row)] = lingshoudanwei19
            sheet[get_column_letter(20) + str(cell.row)] = guanjianzi20
            sheet[get_column_letter(21) + str(cell.row)] = lingshoujia21
    
            if img:
                sheet[get_column_letter(21) + str(cell.row)] = ret
    
            wb.save(r'C:UsersadminDesktopT1.xlsx')
            # print('end')
    
            time.sleep(3)
            driver.back()
    
        except Exception as e:
            print('%s 错误'%cell.value)
            time.sleep(3)
            driver.back()
    
    wb.close()

  • 相关阅读:
    『开源』仿SQLServer山寨一个 跨数据库客户端
    『开源』也顺手写一个 科学计算器:重磅开源
    『转载』还在找字体?收下这份最全可商用免费字体清单!
    『开源协议』Creative Commons Attribution 3.0 License . 协议的个人理解,并 转载分享 4000个 精美可商用小图标
    『卧槽』意外发现了 Hashtable 的 foreach 用法 BUG
    『性能』List 和 HashSet 查找性能比较 (任何数据量的检索 从此只用 HashSet )
    『备注』GDI+ 绘制文本有锯齿,透明背景文本绘制
    『动态』动态JSON万能转换函数 + .Net40 dynamic动态数据绑定
    『随笔』.Net 底层 数组[] 的 基本设计探秘 512 子数组
    『转载』中国芯片差在哪?这篇讲全了
  • 原文地址:https://www.cnblogs.com/Anec/p/10657455.html
Copyright © 2011-2022 走看看