浏览器抓取网页( Python安装Python所需要的包()(图) )
优采云 发布时间: 2022-02-22 11:05浏览器抓取网页(
Python安装Python所需要的包()(图)
)
4、抓取网页数据
点击Chrome工具栏上的HttpWatch图标,会弹出记录页面,提示HttpWatch已开始记录,请导航至网页开始记录网络流量。
例如:在浏览器地址栏中输入作者的CSDN地址进行网页抓取。
抓取的网页数据。可以详细查看不同的文件类型(js、css、gif、png 等)、所用时间、发送和接收的字节数、使用的方法、状态码、URL 地址等。
注意:部分功能在基础版中无法使用。要使用它,只能安装专业版。
5、Selenium 与 HttpWatch 结合
当你想在 Selenium 中测试页面功能时,你想获取一些信息,例如提交请求数据、接收请求数据、页面加载时间等,Selenium + HttpWatch 会是一个不错的解决方案。
HttpWatch 具有广泛的自动化 API,允许从最流行的编程语言(C#、Ruby、Python、JavaScript 等)对其进行控制。可与 IE 的自动化测试框架如 Watir 和 Selenium 集成,以便在测试期间检测 HTTP 级别的错误和性能问题。
1、下载指定的浏览器驱动
使用Selenium控制浏览器操作时,需要先下载指定的浏览器版本驱动(如Chrome浏览器),然后放到Python安装目录的根目录下(Python环境变量已配置好)。
Chrome驱动下载地址:
将下载的chromedriver.exe复制到Python安装目录。
2、安装 Python 包
(1)安装 Selenium
pip install -U selenium
(2)安装win32com
3、脚本代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 公众号:AllTests软件测试
import win32com.client
def myCheck(myUrl):
control = win32com.client.Dispatch('HttpWatch.Controller')
plugin = control.Chrome.New()
# 设置是否过滤某些条目,False为不过滤
plugin.Log.EnableFilter(False)
# 开始记录
plugin.Record()
plugin.GotoURL(myUrl)
control.Wait(plugin, -1)
# 将日志记录到一个xml文件里
logFileName = '/Users/wangmeng/Desktop/' + 'myLog' + '.xml'
plugin.Log.ExportXML(logFileName)
# 停止记录
plugin.Stop()
# 打印
print("总数: " + str(plugin.Log.Entries.Count))
for i in range(plugin.Log.Entries.Count):
print("条目: " + str(i+1))
print("URL地址: " + str(plugin.Log.Entries[i].URL))
print("所用时间: " + str(plugin.Log.Entries[i].time))
plugin.CloseBrowser()
if __name__ == '__main__':
myCheck("https://blog.csdn.net/wangmcn")
注意:HttpWatch 的某些 API 方法不能用于已安装的 HttpWatch 基础版。要使用它,必须先卸载基础版,再安装HttpWatch专业版后才能使用。
4、执行结果
(1)脚本执行后自动生成的xml文件。
(2)通过控制台打印的日志,可以看到页面使用的响应时间。