在线抓取网页( Python安装Python所需要的包(二)-抓取网页数据 )

优采云 发布时间: 2022-02-23 11:07

  在线抓取网页(

Python安装Python所需要的包(二)-抓取网页数据

)

  

  四、抓取网页数据

  点击Chrome工具栏上的HttpWatch图标,会弹出记录页面,提示HttpWatch已开始记录,请导航至网页开始记录网络流量。

  

  例如:在浏览器地址栏中输入作者的CSDN地址进行网页抓取。

  抓取的网页数据。可以详细查看不同的文件类型(js、css、gif、png 等)、所用时间、发送和接收的字节数、使用的方法、状态码、URL 地址等。

  

  注意:部分功能在基础版中无法使用。要使用它,只能安装专业版。

  五、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

  python -m pip install pypiwin32

  3、脚本代码

  #!/usr/bin/env python

# -*- coding:utf-8 -*-

# QQ群:798478386

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)通过控制台打印的日志,可以看到页面使用的响应时间。

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线