爬虫测试
Posted guyuanlin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫测试相关的知识,希望对你有一定的参考价值。
requests库是用来处理http请求的第三方库。
import requests
get(url[,timeout=n])函数是用来获取网页的函数,参数url是网页的地址,timeout=n]表示每次请求超时的时间,调用后返回Response对象
r=requests.get("https://www.baidu.com",timeout=30) #获取百度主页的内容,响应时间为30毫秒 print(type(r)) #输出Response对象 print(r.status) #输出状态,200为成功,404为失败 print(t.text) #输出内容的字符串形式 print(t.encoding="utf-8") #以utf-8编码输出 print(t.content) #以二进制形式输出
以下为访问百度20次,返回状态的
import requests try: for i in range(20): r=requests.get("https://www.baidu.com",timeout=30) print(type(r)) print(r.text) except: print(‘kong‘)
beautifulsoup4 是一个可以从html或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.BeautifulSoup配合Request使用,能大大提高爬虫效率。使用时用以下方法引入
from bs4 import BeautifulSoup
之后使用BeautifulSoup()创建一个·BeautifulSoup对象
soup=BeautifulSoup(r.text)
BeautifulSoup是一个树形结构,包含HTML页面中的每一个Tag元素,如<head>、<body>
BeautifulSoup对象的常用属性 |
|
head | HTML页面的<head>内容 |
title | HTML页面标题 |
body | HTML页面的<body>内容 |
p | HTML页面中第一个<p>内容 |
strings | HTML页面所有呈现在Web上的字符串 |
stripped_strings | HTML页面所有呈现在Web上的非空字符串 |
除此以外,还可以通过Tag对象的name、attrs和string属性获得相应内容。
属性 | 描述 |
name | 标签名字 |
attrs | 字典,包含原来页面Tag所有属性 |
contents | 列表,当前Tag下所有Tag内容 |
strings | 字符串,标签显示的内容 |
find_all()和find()函数是根据参数找标签的函数,区别在于前者查找所有符合条件的标签,后者只返回第一个符合的标签。
例子如下
import requests from bs4 import BeautifulSoup r=requests.get("http://yz.yzhiliao.com/course/83/task/644/show") r.encoding=‘utf-8‘ soup=BeautifulSoup(r.text,‘lxml‘) print(soup.head.string) #head标签的内容 print(soup.body.string) #body标签的内容 l=soup.find_all(id="first") #查找所有id="first"的标签对象 for p in l: print(p.name) #逐个输出查找到的标签名字
以上是关于爬虫测试的主要内容,如果未能解决你的问题,请参考以下文章
CTS测试CtsWindowManagerDeviceTestCases模块的testShowWhenLockedImeActivityAndShowSoftInput测试fail项解决方法(代码片段
;~ 小部分AutoHotkey源代码片段测试模板2019年10月9日.ahk
typescript Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming/angular-2/