python
玩蛇工程师千寻
这个作者很懒,什么都没留下…
展开
-
python中嵌套列表的遍历
如下,需要写两个循环,外循环是对外部列表的遍历,内部循环是对内部列表的遍历,最后b列表就是一个没有嵌套的列表。a=[[1,2],[3,4],[5,6]]b=[]for m in range(0,3): for n in range(0,2): b.append(a[m][n])print(b)结果:[1,2,3,4,5,6]...原创 2021-02-23 19:11:32 · 1738 阅读 · 0 评论 -
Glidedsky第二关详细解答(结合进程池)
第二关是解决1000个分页数字加减的问题,比第一关多了一个翻页的步骤。翻页只要用到requests.get的params参数即可。不多说,直接上代码:import requestsfrom lxml import etreeimport renumber_lists = []url='http://www.glidedsky.com/level/web/crawler-basic-2'headers={ 'User-Agent': 'Mozilla/5.0 (Windows原创 2021-02-23 19:06:15 · 323 阅读 · 4 评论 -
爬虫请求头批量加引号
python中编写爬虫程序通常需要添加请求头,但是从浏览器中复制的请求头没有加引号。当请求头信息比较多的时候,加引号是一个非常痛苦的事情,所以笔者写了一个小脚本,可以批量给请求头信息添加引号。import redef MakeHeaders(data): rule=re.compile('(.*): (.*)') results=re.findall(rule,data) for result in results: change="'"+result[0]+"原创 2021-02-19 17:46:51 · 504 阅读 · 0 评论 -
正则表达式实战:结合计数器思想,模拟网站设置用户名的审查
正则表达式主要的功能是按照规则匹配字符。其主要应用的领域之一就是网站设置密码时对用户名的审查。所谓用户名的审查就是要求密码中只能含有英文字母、数字和下划线等。我们可以使用正则表达式的常用操作符"\w"来实现。keywords = input("请输入您设置的密码(只能包含数字、字母和下划线):")笔者自创了一种运用计数器原理审查用户名的方式,这种方法可以把匹配和判断两个逻辑分离开来。这样可以避免逻辑混乱,也方便了对代码的维护。以下是计数函数和判断函数的源码:def Counter(keyword原创 2021-02-18 20:05:32 · 99 阅读 · 1 评论 -
Glidedsky第一关详细解答
第一关是算是入门级的操作了。唯一比较麻烦的是,你直接用requests获取url的响应数据是不行的,网站要求你登录。这个时候我们一般有两种方法,一种是手动在Headers头部信息里添加Cookie,另一种是使用selenium自动化登录网页。Cookie:自行去浏览器里的Headers里复制粘贴到*处。import requestsurl='http://www.glidedsky.com/level/web/crawler-basic-1'headers={ 'User-Agent':原创 2021-02-09 16:51:42 · 1073 阅读 · 4 评论 -
爬虫练习网站Glidedsky
最近发现了一个很好的爬虫练习网站Glidedsky,网址:http://www.glidedsky.com/。使用邮箱注册之后就可以开始闯关答题了,题目也非常有意思。这里面的每一种题目基本是一种类型,通过一个问题基本可以解决一类问题。我也会在之后和大家分享一下解题的想法。...原创 2021-02-09 16:38:08 · 1230 阅读 · 5 评论 -
运用爬虫技术开发免费ip代理池
笔者从西拉代理上获取的公开免费代理IP,稳定性较高,使用代码前记得下载requests库。原创 2021-02-03 20:16:51 · 134 阅读 · 0 评论