当前位置: 首页 > news >正文

j网站开发网站首页排名

j网站开发,网站首页排名,网站制作一条龙,市气象局可以做网站么目录 1.为什么使用selenium 2.安装selenium 2.1Chrome浏览器 2.2驱动 2.3下载selenium 2.4测试连接 3.selenium元素定位 3.1根据id来找到对象 3.2根据标签属性的属性值来获取对象 3.3根据xpath语句来获取对象 3.4根据标签的名字获取对象 3.5使用bs4的语法来获取对象…

目录

1.为什么使用selenium

2.安装selenium

2.1Chrome浏览器

2.2驱动

2.3下载selenium

2.4测试连接

3.selenium元素定位

3.1根据id来找到对象

3.2根据标签属性的属性值来获取对象

3.3根据xpath语句来获取对象

3.4根据标签的名字获取对象

3.5使用bs4的语法来获取对象

3.6使用a标签来获取对象

3.7所有代码

4.selenium元素信息

5.seleniu的交互

6.收藏一个大佬的分享

1.为什么使用selenium

模拟浏览器功能,自动执行网页中的js代码,实现动态加载

2.安装selenium

Selenium Python 教程 - 知乎 (zhihu.com)

我是根据这个博主的文章学习下载安装的。

因为一直用的是Edge的浏览器,所以在后面就遇到了很多问题。

忙活半小时终于成功了。报了各种错误。现在终于弄好了。

第一次报误:

ValueError: Timeout value connect was <object object at 0x000001DF6F6800B0>, but it must be an int, float or None.

第二次报错:

AttributeError: 'str' object has no attribute 'capabilities'

第三次报错:

DeprecationWarning: executable_path has been deprecated, please pass in a Service object

最后协调了各个版本:

2.1Chrome浏览器

Chrome浏览器版本,一开始下的120最新版,结果发现下载最新版本的驱动网站进不去,然后就去下载之前的老版本

这里可以分享一个安装包,自行下载。链接:https://pan.baidu.com/s/19kURAxzB5Nib0eyOOU0jew?pwd=1234 
提取码:1234

2.2驱动

驱动就可以直接进这个网站下载。CNPM Binaries Mirror (npmmirror.com)

然后选择适合自己电脑的版本就可以啦。

下载完驱动后我是直接将驱动解压缩后放在我日常编写程序的目录下的。不知道这个有啥讲究没。

或者看网上其他大佬们去修改了环境变量。Selenium安装WebDriver最新Chrome驱动(含116/117/118/119)_chromedriver 119-CSDN博客

2.3下载selenium

我下载的是4.5.0版本的,太高的版本就会报错,我也不知道什么原因

2.4测试连接

代码一:

# 导入selenium
from selenium import webdriver
# 创建浏览器操作对象
path = 'chromedriver.exe'
browser = webdriver.Chrome(path)
# 访问网站
url = 'https://www.baidu.com'
browser.get(url)

这个运行后,浏览器倒是有反应,但还是报错呜呜呜呜呜

代码二:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 尝试传参
path = 'chromedriver.exe'
s = Service(path)
driver = webdriver.Chrome(service=s)
url = 'https://www.baidu.com/'
driver.get(url)

那这个就是完全没有问题的。解决方法参考了这个大佬的文章。

selenium 报错 DeprecationWarning: executable_path has been deprecated, please pass in a Service object-CSDN博客

3.selenium元素定位

现在的用法变了,跟着网上做的报错了。

现在变成这种传参的了。

并且还要再导入一个库

from selenium.webdriver.common.by import By

3.1根据id来找到对象

button = browser.find_element(by=By.ID,value='su')
print(button)

3.2根据标签属性的属性值来获取对象

button = browser.find_element(By.NAME,value='wd')
print(button)

3.3根据xpath语句来获取对象

button = browser.find_element(by='xpath',value='//input[@id="su"]')
print(button)

3.4根据标签的名字获取对象

button = browser.find_element(by=By.TAG_NAME,value='input')
print(button)

3.5使用bs4的语法来获取对象

button = browser.find_element(by=By.CSS_SELECTOR,value='#su')
print(button)

3.6使用a标签来获取对象

button = browser.find_element(by=By.LINK_TEXT,value='新闻')
print(button)

3.7所有代码


from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By# 尝试传参
path = 'chromedriver.exe'
s = Service(path)
browser = webdriver.Chrome(service=s)
url = 'https://www.baidu.com/'
browser.get(url)# 元素定位
# 根据id找到对象
# button = browser.find_element(by=By.ID,value='su')
# print(button)# 根据标签属性的属性值来获取对象
# button = browser.find_element(By.NAME,value='wd')
# print(button)# 根据xpath语句来获取对象
# button = browser.find_element(by='xpath',value='//input[@id="su"]')
# print(button)# 根据标签的名字获取对象
# button = browser.find_element(by=By.TAG_NAME,value='input')
# print(button)# 使用bs4的语法来获取对象
# button = browser.find_element(by=By.CSS_SELECTOR,value='#su')
# print(button)# 使用a标签来获取对象
button = browser.find_element(by=By.LINK_TEXT,value='新闻')
print(button)

4.selenium元素信息

# 获取元素信息
input = browser.find_element(by=By.ID,value='su')
# 获取元素类属性
print(input.get_attribute('class'))
# 获取元素标签属性
print(input.tag_name)

 什么叫做获取文本信息?

button = browser.find_element(by=By.LINK_TEXT,value='新闻')
print(button.text)

5.seleniu的交互

js_button = 'document.documentElement.scrollTop=100000'
button.execute_script(js_button)

在网上跟着别人用的这个代码,就给报错了哈哈哈哈哈

AttributeError: 'WebElement' object has no attribute 'execute_script'

然后根据这篇文章改了一下。python学习之滚动页面函数execute_script-CSDN博客

js = 'window.scrollTo(0,document.body.scrollHeight)'
browser.execute_script(js)

成功了!!!

最终代码就是这样了


from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By# 尝试传参
path = 'chromedriver.exe'
s = Service(path)
browser = webdriver.Chrome(service=s)
url = 'https://www.baidu.com/'
browser.get(url)import time
time.sleep(2)# 获取文本框对象
input = browser.find_element(by=By.ID,value='kw')# 在文本框输入周杰伦
input.send_keys('周杰伦')time.sleep(2)# 获取百度一下的按钮
button = browser.find_element(by=By.ID,value='su')
# 点击按钮
button.click()time.sleep(2)# 滑倒底部
js = 'window.scrollTo(0,document.body.scrollHeight)'
browser.execute_script(js)time.sleep(2)# 获取下一页的按钮
next = browser.find_element(by='xpath',value='//a[@class="n"]')
# 点击下一页
next.click()time.sleep(2)# 回到上一页
browser.back()
time.sleep(2)
# 回去
browser.forward()
time.sleep(3)
# 退出浏览器
browser.quit()

6.收藏一个大佬的分享

Selenium Python 教程 - 知乎 (zhihu.com)

http://www.yidumall.com/news/91826.html

相关文章:

  • 河源网站网站建设商丘网站优化公司
  • 公司视频广告拍摄青岛的seo服务公司
  • 营销设计网站建设seo网络营销招聘
  • 企业网络推广培训seo推广网站
  • 宿迁网站建设方案电子制作网站
  • pk10代码网站开发平台推广精准客源
  • 查做外贸客户的网站如何优化
  • html网站素材网网站统计工具有哪些
  • 网站建设需要的技术百度搜索推广登录入口
  • 做局域网网站教程上海网站制作开发
  • 政府网站流行设计特点淘宝seo搜索引擎原理
  • 公安局网站备案表情感网站seo
  • 网站单页设计steam交易链接在哪看
  • 外贸b2c平台都有哪些网站西安网站设计开发
  • 做网站推广的销售电话开场白百度新闻网
  • 为外国人做非法网站今日实时热点新闻事件
  • 网站建设dw站点建设360竞价推广技巧
  • b2b电子商务网站调研报告电大作业直播网站排名
  • 莒县网站制作网络广告策划书
  • Wordpress制作一个时间轴浙江关键词优化
  • 网站建设倒计时模板seo公司上海
  • 中文网址大全2345智能网站推广优化
  • 网站建设合同模版企业网站模板设计
  • wordpress 当前分类名称百合seo培训
  • 免费的二维码生成软件关键词优化有哪些作用
  • 深圳坂田做网站seo如何优化
  • 女人做一级a网站免费友情链接网站免费
  • 石家庄学网站建设东莞关键词排名快速优化
  • 万网域名管理平台登录珠海百度关键词优化
  • 设计工作网站做网络销售如何找客户