📑打牌 : da pai ge的个人主页
🌤️个人专栏 : da pai ge的博客专栏
☁️宝剑锋从磨砺出,梅花香自苦寒来
目录
1、win10安装python环境
2、验证python是否安装成功
3、安装selenium
4、安装驱动
5、pycharm安装python环境
常见问题:编辑
1、webdriver has no attribute "find_element_by_id"编辑
2、gecodriver needs to be in PATH编辑
3、安装了selenium报错has no attribute Chrome或者Firefox编辑
4、绕过百度安全验证
5、selenium+火狐浏览器,不显示alert弹窗
6、使用pip安装selenium出现报错,pip使用报错
7、代码案例
1、win10安装python环境
尤其需要注意 !勾选添加环境变量!
按照这个教程来安装python:
https://blog.csdn.net/qq_27149279/article/details/107178950
2、验证python是否安装成功
cmd执行python --version
3、安装selenium
1)复制pip.exe的安装路径,进入cmd执行 cd并进入到pip.exe的安装路径
示例路径:
2)执行命令:( 不推荐使用该命令)pip install selenium(目前最新版本为4,老师讲的是3,建议使用 pip install Selenium==3.12.0来指定版本下载)
执行结束如图:
注意:warning信息不需要关注
3)检查selenium包是否安装成功,进入到python路径下的lib文件夹下(或者cmd执行命令:pip show selenium)
示例:
4、安装驱动
注意!!!安装的驱动必须放在系统环境变量下!
所有浏览器的驱动都在:https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/
下载好的驱动建议直接放在python路径下,就不用添加系统环境变量了还有浏览器也要添加驱动路径是C:\Program Files (x86)\Microsoft\Edge\Application
5、pycharm安装python环境
常见问题:
1、webdriver has no attribute "find_element_by_id"
原因:下载selenium没有指定版本,导致版本过高,当前语法不支持
解决办法:cmd执行:1)pip uninstall selenium 2)pip install Selenium==3.12.0
2、gecodriver needs to be in PATH
原因:驱动存放路径没有添加系统环境变量
解决办法:
1)找到驱动存放路径,复制路径
2)将复制的路径添加到系统环境变量中(PATH里)
3、安装了selenium报错has no attribute Chrome或者Firefox
原因:pycharm没有加上selenium包
解决办法:步骤五重新再执行一遍,点击确定就会出现当前python环境下安装的最新的包
4、绕过百度安全验证
创建驱动对象后加上代码:
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument",{'source':'Object.defineProperty(navigator,"webdriver",{get:()=>undefind})'})
位置如图:
5、selenium+火狐浏览器,不显示alert弹窗
解决办法:
修改火狐浏览器的配置:
修改为自己的文件路径!!
6、使用pip安装selenium出现报错,pip使用报错
解决办法:
在pycharm里手动安装selenium
7、代码案例
import time
from selenium import webdriver
driver = webdriver.Edge("C:\Program Files (x86)\Microsoft\Edge\Application\msedgedriver.exe")
driver.get('http://login.html')
driver.find_element_by_css_selector("#username").send_keys("mht")
time.sleep(30)
driver.find_element_by_css_selector("#password").send_keys("6666")
time.sleep(30)
driver.find_element_by_css_selector("#submit").click()
time.sleep(30)
import time
from selenium import webdriver
driver = webdriver.Edge("C:\Program Files (x86)\Microsoft\Edge\Application\msedgedriver.exe")
driver.get('http://.html')
driver.find_element_by_css_selector("body > div.nav > a:nth-child(4)").click()
cur_url = driver.current_url
time.sleep(10)
cur_title = driver.find_element_by_css_selector("body > div.nav > span.title").text
time.sleep(10)
print(cur_url)
driver.quit()