python 使用selenium 打开百度网页并输入查询内容

前提:

        已经安装了 Selenium 库和相应浏览器的驱动。最新版驱动找不到的话,可以看我之前的文章,按照方法执行即可。

代码:

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

# 创建浏览器驱动对象,这里以 Chrome 浏览器为例
driver = webdriver.Chrome()

# 打开百度网页
driver.get("https://www.baidu.com/")

# 找到搜索框元素,通过新的定位方法  搜索框的 id 为"kw"
search_box = driver.find_element(By.ID, "kw")

# 在搜索框中输入查询内容
search_box.send_keys("你要查询的内容")

# 模拟点击搜索按钮,搜索按钮的 id 为"su"
search_button = driver.find_element(By.ID, "su")
search_button.click()

# 暂停程序 60 秒,期间页面保持打开状态
time.sleep(60)

可能出现的问题:

 1)较新的 Selenium 版本中,find_element_by_id等旧的定位方法已被弃用。会出现这个报错:

AttributeError: 'WebDriver' object has no attribute 'find_element_by_id'

你可以使用新的定位方法来替代。以上演示代码就是最新版的。

2)可能不会定位,找相应元素位置,以上代码为例,找到搜索框id,搜索按钮id。

可以在要搜索的界面,按F12进入开发者模式,然后:点击这里

然后你鼠标点击哪里就可以看哪里的页面信息,比如点击了输入框,自然就看到这里的信息,id就是我们所需要的,放到代码相应位置即可。搜索按钮也是一样的方法。

3)不只是找id的一种方法,还有很多定位方式,后续会补充,现阶段了解这个就足够使用了。

作者:狐狸戾

物联沃分享整理
物联沃-IOTWORD物联网 » python 使用selenium 打开百度网页并输入查询内容

发表回复