爬虫的抓取方式有好几种,正则表达式,Lxml(xpath)与BeautifulSoup,我在网上查了一下资料,了解到三者之间的使用难度与性能三种爬虫方式的对比。抓取方式性能使用难度正则表达式快困难Lxml快简单BeautifulSoup慢简单这样一比较我我选择了Lxml(xpath)的方式了,虽然有三种方式,但肯定是要选择最好的方式来爬虫,这个道理大家都懂,另外有兴趣的朋友也可以去了解另外两种爬虫方式!好了现在来讲讲xpath由于Xpath属于lxml模块
系统 2019-09-27 17:49:52 2019
一开始我使用了rarfile这个库,奈何对于含有密码的压缩包支持不好,在linux上不抛出异常;之后有又尝试了unrar。。比rarfile还费劲。。所以用了调用系统命令的方法,用7z来解压通过apt可以安装上7z-full和7z的rar插件有一个地方要注意-o和-p与后面的目录、密码之间没有空格!!同样可以用这个代码暴力破解压缩包密码#coding:utf-8importosimportzipfileimporttracebackimporttimeim
系统 2019-09-27 17:49:33 2019
本周的PyCoder'sWeekly上分享了一篇小文章,它里面提到的冷知识很有意思,我稍作补充,分享给大家。它提到的部分问题,读者们可以先思考下:若两个元组相等,即a==b且aisb,那么相同索引的元素(如a[0]、b[0])是否必然相等呢?若两个对象的hash结果相等,即hash(a)==hash(b),那么它们是否必然相等呢?答案当然都为否(不然就不叫冷知识了),大家可以先尝试回答一下,然后再往下看。-----思考分割线-----好了,先来看看第一个问
系统 2019-09-27 17:48:26 2019
Shellshell获取文件最后修改时间的秒时间戳:stat-c%Y$path/$newest_logshell获取当前时间的秒时间戳:date+%s两个时间戳相减:timegap=$[$timestamp-$filetimestamp]将日期时间字符串转化为时间戳:date-d"2019-08-26"+%s将时间戳转化为日期时间字符串:date-d@1566748800获取n天前的日期时间:date-d"1dayago"+"%Y-%m-%d"获取n分钟前
系统 2019-09-27 17:48:12 2019
前言其实有一个模块也支持执行系统命令,那个模块就是sys.system,但他执行系统命令会直接通过主进程去执行命令,那假如,该命令的执行需要耗费一个小时,那么主进程会卡一个小时,而不会去干别的事,这样就会导致程序的运行效率低下。如果由subprocess去执行系统命令的时候并不会让主进程去执行,而是主进程会开辟出一个子进程去执行,并不会影响到主进程的运行,主进程该干嘛就干嘛,那么又有个问题,大家都知道进程之间的内存空间是独立的,也就是说进程之间是不能相互访
系统 2019-09-27 17:47:47 2019
isdigit()方法检查字符串是否只包含数字(全由数字组成)。语法以下是isdigit()方法的语法:str.isdigit()参数NA返回值如果字符串中的所有字符都是数字,并至少有一个字符此方法返回true,否则返回false。例子下面的例子显示了isdigit()方法的使用。#!/usr/bin/pythonstr="123456";#Onlydigitinthisstringprintstr.isdigit();str="thisisstringe
系统 2019-09-27 17:47:18 2019
使用ghost.py通过搜搜的微信搜索来爬取微信公共账号的信息#-*-coding:utf-8-*-importsysreload(sys)importdatetimeimporttimesys.setdefaultencoding("utf-8")fromghostimportGhostghost=Ghost(wait_timeout=20)url="http://weixin.sogou.com/gzh?openid=oIWsFt8JDv7xubXz5
系统 2019-09-27 17:47:10 2019
split()方法返回的字符串中的所有单词的列表,使用str作为分隔符(如果在未指定的所有空格分割),可选择限当前分割为数量num。语法以下是split()方法的语法:str.split(str="",num=string.count(str)).参数str--这是任何分隔符,默认情况下是空格。num--这是要分割的行数。返回值此方法返回行列表。例子下面的示例演示了split()方法的使用。#!/usr/bin/pythonstr="Line1-abcde
系统 2019-09-27 17:47:08 2019
大体上把Python中的数据类型分为如下几类:Number(数字)包括int,long,float,complexString(字符串)例如:hello,"hello",helloList(列表)例如:[1,2,3],[1,2,3,[1,2,3],4]Dictionary(字典)例如:{1:"nihao",2:"hello"}Tuple(元组)例如:(1,2,3,abc)Bool(布尔)包括True、False由于Python中认为所有的东西都是对象,所以
系统 2019-09-27 17:38:45 2019
下面是最简单的实现方法,先将目标网页抓回来,然后通过正则匹配a标签中的href属性来获得超链接代码如下:importurllib2importreurl='http://www.sunbloger.com/'req=urllib2.Request(url)con=urllib2.urlopen(req)doc=con.read()con.close()links=re.findall(r'href\=\"(http\:\/\/[a-zA-Z0-9\.\/]
系统 2019-09-27 17:38:07 2019