- 博客(20)
- 收藏
- 关注
原创 xpath format传参
import requestsfrom lxml import etree# 示例urlurl='xxx'response = requests.get('url').texthtml = etree.HTML(response)# 参数 [{}]占位 num = 1# [0]列表转字符串# 括号作用:(//标签[@属性='属性值']//下级标签)[1] ----相当于第一个字符串c = html.xpath("(//td//text())[{}]".format(num))[0]
2020-10-16 17:59:22 923 1
原创 xpath 下标用法 循环写法
下标的用法(//table[@class="Normal"]//tr)[1]//td这里 //table 页面下任意一个table 或者说所有table标签[@属性=“属性值”]//标签重点是括号括起来(标签[@属性=“属性值”]//下级标签)[ 1 ]这个 [ 1 ] 就是下标 相当于第一个在样例中是指所有 下级标签 tr 中的 第一个 tr循环的写法/格式button = response.xpath('//div[@id="Paging"]//a')for i in ra.
2020-10-16 16:02:19 4188
原创 Query String Parameters、Form Data、Request Payload
在与server端进行数据传递时,通常会用到GET、POST方法进行参数提交,而参数提交的方式,通常取决于server端对数据的接收方式。Query String Parameters当发起一次GET请求时,参数会以url string的形式进行传递。即?后的字符串则为其请求参数,并以&作为分隔符。如下http请求报文头:// GeneralRequest URL: http://foo.com?x=1&y=2Request Method: GET// Query Str
2020-10-16 10:29:31 231
原创 python f-string格式化字符串
定义f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串。旧版格式化字符串方式name = 'Runoob'print('Hello %s' % name)# output# 'Hello Runoob'f-string格式化字符串f-string 格式话字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去name = 'Runoob'print(f'Hello {name}' )..
2020-10-15 11:53:21 374
原创 python 二进制 bytes类型(b‘‘)
2进制:满2进1 , 0b108进制:满8进1 , 0o1010进制:满10进1 , 1016进制:满16进1 , 0x10时间满60进1bin() 转2进制方法int() 转10进制方法oct() 转8进制方法hex() 转16进制方法1.字符串前加 r例:r"\n\n\n\n” # 表示一个普通生字符串 \n\n\n\n,而不表示换行了。作用:去掉反斜杠的转义机制。(特殊字符:即那些,反斜杠加上对应字母,表示对应的特殊含义的,比如最常见的”\n”表示换
2020-10-14 18:19:12 4852 1
原创 xpath语法实例
1 一个<div>下有50个<a>标签,取出其中没有class属性的2 有10个<a>标签带有class属性,取出其中的第3个1 //div/a[not(@class)]2 (//div/a[@class])[3][3]的优先级高,所以需要加上括号。
2020-10-13 21:08:52 180
原创 Ubuntu网络图标消失解决办法
sudo service network-manager stopsudo rm /var/lib/NetworkManager/NetworkManager.statesudo service network-manager startsudo gedit /etc/NetworkManager/NetworkManager.conf(把false改成true)sudo service network-manager restart
2020-10-13 10:57:42 484
原创 xpath语法 浏览器与代码结果不一致
标签table就算没写tbody (源代码),页面也会自动生成tbody (浏览器正文)。可以看一下tbody元素。
2020-10-12 20:05:25 625
原创 unbuntu删除软件 命令
1.打开一个终端,输入dpkg --list ,按下Enter键,终端输出以下内容,显示的是你电脑上安装的所有软件。软件列表2.在终端中找到你需要卸载的软件的名称,列表是按照首字母排序的。找到要卸载的软件包3.在终端上输入命令sudo apt-get --purge remove 包名(–purge是可选项,写上这个属性是将软件及其配置文件一并删除,如不需要删除配置文件,可执行sudo apt-get remove 包名) ,此处我要删除的是polipo ,那么在终端输入sudo apt-get -
2020-10-11 18:30:51 187
原创 游戏测试
你玩过的游戏,它吸引你的地方是什么?moba类:王者荣耀 创新性,公平性和丰富的开黑感吸引我。STG类:和平精英,写实的场景地图,物资资源吸引我。休闲竞速类:QQ飞车,QQ飞车手游,音乐好听,休闲感十足。口袋宠物系列手游:收集养成类,冒险的风格吸引我。MOMORPG:剑灵,逆水寒,剑网三。吸引我的是他们所构造出来的世界观,剧情和故事线。根据你上面所提的游戏,对游戏中的一个子系统,进行用例设计如:好友系统、商城系统、排位系统等等好友系统,一、UI测试。二、功能测试。三、性能测试。手机游戏或
2020-07-14 21:22:48 773
原创 Python next() 函数
Python 内置函数描述next() 返回迭代器的下一个项目。next() 函数要和生成迭代器的iter() 函数一起使用。next 语法:next(iterator, default)参数说明:iterator – 可迭代对象default – 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。...
2020-06-08 21:57:18 204
原创 Python dir() 函数
Python 内置函数描述dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。语法dir([object])参数说明object – 任意类型的对象。返回值返回模块的属性列表。实例以下实例展示了 dir 的使用方法:>>>dir() # 获得当前模块的属性列表['__builtins__
2020-06-08 20:08:51 124
原创 python正则 re模块 字符串转义
python正则表达式转义注意事项无论哪种语言,在使用正则表达式的时候都避免不了一个问题,就是在匹配元字符的时候,需要对元字符进行转义,让正则表达式引擎将其当做普通字符来匹配。本文主要以python为例,说明一下转义中需要注意的问题。python的正则表达式中需要转义的元字符有以下几个:.^$*+?\[]|{}()python中对元字符的转义使用双反斜杠 \ 来表示# 普通元字符的转义_string = '''!@#$%^&'''# 不转义print re
2020-06-08 19:49:58 2974
原创 python 正则re模块 group() groups()
正则表达式中的三组括号把匹配结果分成三组group() 同 group(0) 匹配正则表达式整体结果group(1) 列出第一个括号匹配部分,group(2) 列出第二个括号匹配部分,group(3) 列出第三个括号匹配部分。group() 可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组。groups() 返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。没有匹配成功的,re.search() ,re.match() 返回None ...
2020-06-08 19:33:47 1599
原创 Python 字典
字典,就是一种通过名字引用值的数据结构。这种结构类型是映射类型。它是一种key-value结构的键值对。键可以是数字、字符串、元组。字典可以通过查找某个特定的词键,找到它的值。键必须是唯一的,并且是不可变类型,值可以取任何数据类型,如字符串,数字或元组。...
2020-06-08 09:26:15 171
原创 区分 域名 与 URL
以 url: http://mail.163.com/index.html 为例:http:// 是HTTP超文本传输协议,是网页在互联网传输的协议163 是二级域名,用来定位网站的独一无二的名字mail 是三级域名,表示是一个邮箱服务器,所以是mail. mail.163.com 是网站名,由域名组成http://mail.163.com/index.html 是URL,统一资源定位符,全球性地址,用于定位网上的资源/ 是根目录,通过网站名找到服务器,然后在服务器存放网
2020-06-05 14:30:31 504
原创 scrapy JsonItemExporter JsonLinesItemExporter 两种保存数据方式
JsonItemExporter和JsonLinesItemExporter保存数据JsonItemExporter方式保存数据from scrapy.exporters import JsonItemExporterclass DemoPipeline(object): def __init__(self): self.fp = open("duanzi.json", "wb") self.exporter = JsonItemExporter(self.
2020-06-05 13:20:42 356
原创 python range() zip()
range() python2返回的是一个列表 如果需要创建的列表很大 就需要很大的内存空间range() python3返回的是一个可以迭代对象 什么时候需要 什么时候计算zip() 函数用于将可迭代的对象作为参数 将对象中对应的元素打包成一个个元组 然后返回由这些元组组成的列表如果各个迭代器的元素个数不一致 则返回列表长度与最短的对象相同 利用 * 号操作符 可以将元组解压为列表zip 方法在Python2 和 Python3中的不同:在 Python3中为了减少内存,zip() 返回的是一个
2020-05-23 08:05:08 483
原创 指针和引用的联系与区别
指针和引用的联系与区别★ 相同点:都是地址的概念;指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。★ 区别:指针是一个实体,而引用仅是个别名;引用使用时无需解引用(*),指针需要解引用;引用只能在定义时被初始化一次,之后不可变;指针可度变;引用不能为空,指针可以为空;“sizeof 引用”得到的是所指向的变量(对象)的大答小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小;指针和引用的自增(++)运算意义不一样;...
2020-05-20 19:42:09 107
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人