利用python代码 之百度自动输入与搜索

效果如下:
运行程序
利用python代码 之百度自动输入与搜索_第1张图片
自动打开百度,自动输入网易云音乐,自动点击搜索按钮,实现搜索,效果如下:
利用python代码 之百度自动输入与搜索_第2张图片
python代码如下(具体步骤下面解释):


#导入模块
from selenium import webdriver
import time
#实例化Chrome浏览器对象
driver=webdriver.Chrome()
#准备url
url='http://www.baidu.com'
# 访问
driver.get(url)
#最大化窗口(默认不是最大化)
driver.maximize_window()

# 找到输入框 (kw后面会具体解释,还有下面具体的标签)
shuru=driver.find_element_by_id('kw')
# 在输入框中放我们制定的文字
shuru.send_keys('网易云音乐')
#为了我们肉眼可见,这里休眠2秒,再进行下面的操作
time.sleep(2)

# 找到百度一下按钮
sousuo=driver.find_element_by_id('su')
# 点击某个对象(点击百度一下)
sousuo.click()
time.sleep(2)

#找到网易云音乐
wangyi=driver.find_element_by_id('1').find_element_by_tag_name('a')
print(wangyi)

这是上面的wangyi输出结果
在这里插入图片描述
对于上面的kw、su、1、a 的解释如下:

学过网页的应该都知道(小程序开发好像也是这样),网页中的每个元素都不是凭空的,每个元素都有固定的id(id是唯一的),或者一个或多个姓名,用空格隔开,是可以相同重复的。具体如下:
首先我们先打开百度网页,在我们需要找到的搜索框处右击鼠标,点击检查
利用python代码 之百度自动输入与搜索_第3张图片
就会出现下面的代码,我们用鼠标在代码上移动,就会出现阴影部分,也就是这一块儿代码就是对输入框的控制。
利用python代码 之百度自动输入与搜索_第4张图片
我们可以看到输入框有自己的id
在这里插入图片描述
通过 driver.find_element_by_id(‘kw’),就可以准确定位到输入框

同理找百度一下按钮:
在这里插入图片描述
输入网易云音乐后,同理右击检查,发现这个上面没有自己的id,所以要向上寻找,看离这一级最近的一级的id(实在没有id也可以用class,只要class名字唯一,就能定位到)
利用python代码 之百度自动输入与搜索_第5张图片
寻找我们会发现上面的div的id=1,下面包含一个唯一的a标签
利用python代码 之百度自动输入与搜索_第6张图片
使用driver.find_element_by_id(‘1’).find_element_by_tag_name(‘a’),就可以准确定位到网易云音乐。

当然在实际操作中,也可以直接把url设置为网易云音乐的链接,这样就省去了前面的操作。

你可能感兴趣的:(python爬虫)