还是分析一下大体的流程:首先还是Chrome浏览器抓包分析元素,这是网址:https://www.douyu.com/directory/all发现所有房间的信息都是保存在一个无序列表中的li中,所以我们可以先获取一个装有li的element对象的列表,然后在对每个element逐一操作分析斗鱼的翻页,有一个下一页按钮,是个li,class="dy-Pagination-item-custom",但是当烦到最后一页的时候,class="dy-Paginat
系统 2019-09-27 17:47:21 1920
字节串bytes字节串也叫字节序列,是不可变的序列,存储以字节为单位的数据字节串表示方法:b"ABCD"b"\x41\x42"...字节串的构造函数:bytes()创建一个空的字节串,同b””bytes(整数可迭代对象)用可迭代对象创建一个字节串bytes(整数n)生成n个值为0的字节串bytes(字符串,encoding='utf-8')转码字节串的运算:同其他序列的运算+、+=、*、*=<、<=、>、>=、!=、==in/notin切片和索引函数:le
系统 2019-09-27 17:47:04 1920
分析分析网站寻找需要的网址用谷歌浏览器摁F12打开开发者工具,然后打开斗鱼颜值分类的页面,如图:在里面的请求中,最后发现它是以ajax加载的数据,数据格式为json,如图:圈住的部分是我们需要的数据,然后复制它的网址为https://www.douyu.com/gapi/rknc/directory/yzRec/1,出于学习目的只爬取第一页(减少服务器压力)。然后把网址放到浏览器中测试是否可以访问。如图:结果正常。分析json数据,提取图片链接最后分析发现
系统 2019-09-27 17:46:57 1920
fileinput模块可以遍历文本文件的所有行.它的工作方式和readlines很类似,不同点在于,它不是将全部的行读到列表中而是创建了一个xreadlines对象.下面是fileinput模块中的常用函数input()#它会返回能够用于for循环遍历的对象.filename()#返回当前文件的名称lineno()#返回当前(累计)的行数filelineno()#返回当前文件的行数isfirstline()#检查当前行是否是文件的第一行复制代码代码如下:#
系统 2019-09-27 17:46:52 1920
对Python中正则表达式的理解,主要就是对符号的理解,本文即对Python中常用的正则表达式符号进行简析。其主要的符号有:.默认匹配一个字符,不包含换行符,如果设置DOTALL则匹配换行符^匹配行首$匹配行尾*匹配0个或者多个重复+匹配一个或者多个重复?匹配一个或者零个重复*?,+?,??按照非贪婪模式匹配{m},{m,n},{m,n}?分别匹配m个重复,m至n个重复,m至n个重复按照非贪婪模式\转义[][abc],[a-z][^a-z]|或者匹配'a|
系统 2019-09-27 17:46:52 1920
(1)方法一、直接用a标签的href+数据库中文件地址,即可下载。缺点:wordexcel是直接弹框下载,对于imagetxt等文件的下载方式是直接在新页面打开。(2)方法二、在python后台对下载内容进项处理,返回内容直接弹出下载框。#后台处理函数defdownloadFile(req):filename=basePath+req.GET['url']deffile_iterator(file_name,chunk_size=512):withopen
系统 2019-09-27 17:46:33 1920
接口设计一个应用写出来最终是要给人使用的,哪怕只是给你自己使用。所以,首先应该想想你希望怎么使用它?让我们先给这个小应用起个名字吧,既然及查询票务信息,那就叫它tickets好了。我们希望用户只要输入出发站,到达站以及日期就让就能获得想要的信息,所以tickets应该这样被使用:$ticketsfromtodate另外,火车有各种类型,高铁、动车、特快、快速和直达,我们希望可以提供选项只查询特定的一种或几种的火车,所以,我们应该有下面这些选项:-g高铁-d
系统 2019-09-27 17:46:17 1920
Python安装selenium包打开命令行窗口,进入python交互环境python尝试导入selenium包,报错,说明尚未安装seleniumimportselenium退出python交互环境exit()使用pip安装selenium包pipinstallselenium下载对应版本的webdirver,这里用的是某歌的,因为本机安装的某歌浏览器,网页有对应版本说明及下载地址,这里不写了,注意的是下载的dirver一定要在环境变量里path配有的路
系统 2019-09-27 17:46:04 1920
方法一:主要是inshow()函数的使用首先基本的画图流程为:importmatplotlib.pyplotasplt#创建新的figurefig=plt.figure()#必须通过add_subplot()创建一个或多个绘图#ax=fig.add_subplot(221)#绘制2x2两行两列共四个图,编号从1开始ax1=fig.add_subplot(221)ax2=fig.add_subplot(222)ax3=fig.add_subplot(223)
系统 2019-09-27 17:46:00 1920
相对来说python对字符串的处理是比较高效的,方法也有很多。其中maketrans和translate两个方法被应用的很多,本文就针对这两个方法的用法做一总结整理。首先让我们先回顾下这两个方法:①s.translate(table,str)对字符串s移除str包含的字符,剩下的字符串按照table里的字符映射关系替换。table可以理解为转换表,比较'a'->'A','b'->'B'.②tabel=string.maketrans('s1','s2')s
系统 2019-09-27 17:45:59 1920