[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
python3 + selenium + chrome浏览器
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Sun Dec  3 00:40:35 2017
  4. @author: codegay
  5. python3 & 编辑器 == spyder
  6. """
  7. from time import sleep
  8. from selenium import webdriver
  9. # appdata = environ["LOCALAPPDATA"] + r"\Google\Chrome\User Data"
  10. appdata = "c:/chrome-selenium"
  11. options = webdriver.ChromeOptions()
  12. options.add_argument("user-data-dir=" + appdata)
  13. # options.add_argument("headless")
  14. options.add_argument("disable-gpu")
  15. ddurl = "http://dd.ma/mE0NUHSi"
  16. chrome = webdriver.Chrome(chrome_options=options)
  17. chrome.get(ddurl)
  18. sleep(10)
  19. try:
  20.     geturl = chrome.find_element_by_link_text("点击这里进入")
  21. except:
  22.     print("异常错误或者找不到元素")
  23.     exit()
  24. url = geturl.get_property("href")
  25. print("url:", url)
  26. chrome.get(url)
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

优化了一下。通过id和tag定位,这样不用等待JS的那个倒计时。
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Sun Dec  3 00:40:35 2017
  4. @author: codegay
  5. python3 & 编辑器 == spyder
  6. """
  7. from time import sleep
  8. from selenium import webdriver
  9. # appdata = environ["LOCALAPPDATA"] + r"\Google\Chrome\User Data"
  10. appdata = "c:/chrome-selenium"
  11. options = webdriver.ChromeOptions()
  12. options.add_argument("user-data-dir=" + appdata)
  13. # options.add_argument("headless")
  14. # options.add_argument("disable-gpu")
  15. ddurl = "http://dd.ma/mE0NUHSi"
  16. chrome = webdriver.Chrome(chrome_options=options)
  17. chrome.get(ddurl)
  18. sleep(1)
  19. try:
  20.     geturl = chrome.find_element_by_id("btn_open")
  21.     geturl = geturl.find_element_by_tag_name("a")
  22. except Exception as e:
  23.     print("异常错误或者找不到元素:")
  24.     print(e)
  25.     exit()
  26. url = geturl.get_property("href")
  27. print("url:", url)
  28. chrome.get(url)
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 codegay 于 2017-12-6 02:23 编辑

nim语言写的
  1. import httpclient
  2. import re
  3. import os
  4. proc getlink*(url:string):string {.discardable.} =
  5.     var client = newHttpClient()
  6.     var link: array[1,string]
  7.     var ddmaContent:string
  8.     ddmaContent = client.getContent(url)
  9.     client.close()
  10.     if find(ddmaContent,re"""link1\"\s+href=\"(.+)\"""",link,1) != -1 :
  11.         echo "link:",link[0]
  12.         result = link[0]
  13.     else:
  14.         result = ""
  15. proc startlink*(url:string):int {.discardable.} =
  16.     result = execShellCmd("start " & url)
  17. startlink(getlink("http://dd.ma/mE0NUHSi"))
复制代码
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

返回列表