- 一、写在前面:
- 二、系统准备:
- 三、系统实现:
- 四、总结反思:
一、写在前面:Author:qyan.li
Date:2022.6.3
Topic:借助于网页自动化技术实现指定内容的网页检索
~~~~~~~~ 这篇是python构建智能机器人系列的第二篇文章,主要功能是借助于浏览器自动化技术实现网页指定内容的检索,来作为智能机器人的另外一个功能实现。
~~~~~~~~ 后续大概还会有三篇左右的文章来介绍系统其他的功能实现,需要的同学可以持续关注一下,每部分都会给出分代码,完整的代码待整理完成后会在最后一篇博文中提供。
二、系统准备: ~~~~~~~~ 由于旨在利用浏览器自动化实现网页内容的检索,因此必须配置浏览器自动化的工具。由于自己配置的时间较为久远,详细的步骤已无法记起(好像是需要到指定网页下载和浏览器匹配的驱动文件),因此在此不详述,CSDN上配置博文很多,读者可自行搜索配置。windows系统上的配置相对较为简单。
三、系统实现: ~~~~~~~~ 老样子,还是先上代码,方便大家参考借阅。
## 自动内容检索
def SearchInternet(ObjectContent):
'''
:param ObjectContent:待检索的目标内容
:return: None
'''
driver = webdriver.Firefox()
url = 'http://www.baidu.com'
driver.get(url)
# 最大化窗口(方便后续定位搜索框)
driver.maximize_window()
'''不同的浏览器,此处的标签驱动不同(可从网页源码分析)'''
# 输入框定位和内容输入
shuru = driver.find_element_by_id('kw')
shuru.send_keys(ObjectContent)
time.sleep(2)
# 内容检索
sousuo = driver.find_element_by_id('su')
sousuo.click()
time.sleep(2)
对代码中的部分内容进行解析和讲解:
-
driver = webdriver.Firefox()由于个人电脑浏览器自动化配置为火狐浏览器,所以此处调用时为Firefox,如果配置其他自行修改
-
driver.get('http://www.baidu.com')理论上将如果配置成功,代码运行至此处即可以正常打开浏览器并跳转至百度首页
-
driver.find_element_by_id()方法可以通过id值定位到页面上的特定组件,但是id值怎么寻找呢?按下F12查看网页源码查找对应组件的id值即可。
- 按照F12后显示网页源码:
- 点击右侧黑界面左上角的小箭头,并将光标移至坐标特定的组件处,右侧即可以选中特定的源码,查看id即可
- 查看其中的id,此处以搜素框为例,查看id = kw
~~~~~~~~ 借助于上述方法即可定位至输入框和搜索按键,id分别为kw和su
- 按照F12后显示网页源码:
-
定位至组件后,借助于send_keys()方法和click()方法即可实现内容的输入和按键的点击,本质上模拟人类的操作,即可完成指定内容的检索
~~~~~~~~
代码总体比较简单,了解网络爬虫的同学可能会比较熟悉。OK,网页检索功能实现,下一篇博文讲解音乐播放,自动消息发送如何实现。
~~~~~~~~
参考链接:https://blog.csdn.net/DALEONE/article/details/125197018?spm=1001.2014.3001.5501



