windows上Chrome和Firefox的安装及使用介绍

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_43256057/article/details/100629508

在github或国内镜像上下载对应的执行文件,http://chromedriver.storage.googleapis.com/index.html。
把chromedriver.exe或geckodriver.exe 放在Python解释器的Scripts路径下即可,比如我的:C:\b_my_python_environment\python3.7.4\Scripts,就这么简单!连环境变量都不需要搞,你使用的解释器只有一个就可以这么做,pycharm也要用这个解释器,因为底层使用python终端交互命令使用python3.7.4解释器的时候也是调用Scripts下的包。

当然搞环境变量也没问题,解决问题的方法我那种比较简单而已。
附上检验代码:

# 在开发时候, 都是使用带有界面, 上线时候, 就使用不带界面的

from selenium import webdriver
from selenium.webdriver.common.by import By

import time


driver = webdriver.Chrome()
#driver = webdriver.Firefox() # selenium操作火狐的命令和chrome一样,除了这个指定的代码。
driver.get('http://www.baidu.com')
# 根据ID定位
# input = driver.find_element_by_id('kw')
# 根据xpath定位元素
input = driver.find_element_by_xpath('//*[@id="kw"]')
print(input.tag_name) # 获取标签名
print(input.get_attribute('name')) # 获取name属性
# 根据链接文本定位
xinwen = driver.find_element_by_link_text('新闻')
print(xinwen.get_attribute('href'))
print(xinwen.text) # 获取标签中的文本

# 根据部分链接文本定位元素
hao123 = driver.find_element_by_partial_link_text('hao')
print(hao123.get_attribute('href'))
print(hao123.text)
# 根据css选择定位元素
xinwen = driver.find_element_by_css_selector('#u1 > a:nth-child(1)')
print(xinwen.get_attribute('href'))
print(xinwen.text) # 获取标签中的文本
# 根据class名称定位元素
xinwen = driver.find_element_by_class_name('mnav')
print(xinwen.get_attribute('href'))
print(xinwen.text) # 获取标签中的文本

print('_'*50)
a_s = driver.find_elements_by_class_name('mnav')
for a in a_s:
    print(a.get_attribute('href'))
    print(a.text)
# find_element与find_elements区别
# find_element: 找第一个元素, 如果没有找到就报错了
# find_elements: 找所有元素, 返回一个列表, 如果没有找到返回空列表

# by_xpath的注意事项; 只能获取标签元素, 不能直接或文本或属性的值
a = driver.find_element_by_xpath('//*[@id="u1"]/a[1]') # 对
# a = driver.find_element_by_xpath('//*[@id="u1"]/a[1]/text()') # 错
# a = driver.find_element_by_xpath('//*[@id="u1"]/a[1]/@href') # 错
print(a)

# 第二种定位元素格式(了解)
# a = driver.find_element(By.XPATH, '//*[@id="u1"]/a[1]')


time.sleep(10)
driver.quit()





猜你喜欢

转载自blog.csdn.net/weixin_43256057/article/details/100629508