image花下猫语:近日,Python之父在Medium上开通了博客,并发布了一篇关于PEG解析器的文章(参见我翻的全文译文)。据我所知,他有自己的博客,为什么还会跑去Medium上写文呢?好奇之下,我就打开了他的老博客。最后一篇文章写于2018年5月,好巧不巧,写的竟是pgen解析器,正是他在新文中无情地吐槽的、说将要替换掉的pgen。在这篇旧文里,Guido回忆了他创造pgen时的一些考量,在当时看来,创造一个新的解析器无疑是明智的,只不过时过境迁,现
系统 2019-09-27 17:54:18 2252
背景说明感觉微信公众号算得是比较难爬的平台之一,不过一番折腾之后还是小有收获的。没有用Scrapy(估计爬太快也有反爬限制),但后面会开始整理写一些实战出来。简单介绍下本次的开发环境:python3requestspsycopg2(操作postgres数据库)抓包分析本次实战对抓取的公众号没有限制,但不同公众号每次抓取之前都要进行分析。打开Fiddler,将手机配置好相关代理,为避免干扰过多,这里给Fiddler加个过滤规则,只需要指定微信域名mp.wei
系统 2019-09-27 17:53:47 2252
申明:本文出自我自己的微信号python1024,属于个人原创。先看下代码目录结构:有三个.py文件,map_craw.py、stat.py、store.py分别的功能是爬取数据、数据分析、将爬取的数据存储入mysql数据库中,由于stat.py还没写完,这篇文章主要讲数据的爬取与存储。这里的地图就是baidumap,如果是没有爬虫基础的同学先到CSDN里面搜一下,安装个Chrome浏览器,顺便在浏览器的右上角更多中找到更多工具—>扩展程序选项将JSONV
系统 2019-09-27 17:53:30 2252
model中compile值可以根据需要更改,满足不同的检测需求#判断一段文本中是否包含简体中文importrezhmodel=re.compile(u'[\u4e00-\u9fa5]')#检查中文#zhmodel=re.compile(u'[^\u4e00-\u9fa5]')#检查非中文contents=u'(2014)深南法民二初字第280号'match=zhmodel.search(contents)ifmatch:print(contents)el
系统 2019-09-27 17:52:32 2252
为什么要做接口测试在日常开发过程中,有人做前端开发,有人负责后端开发。接口就是连接前后台,由于前端开发和后端开发的速度可能不一样,例如后端开发好了,但是前端没有开发。那么我们是不是就不需要测试呢?一般我们大部分人都是做功能测试,很多是界面的功能测试。如果你理解了接口测试,那么你就可以针对接口进行测试看看测试金字塔,接口测试是在中间部分,底层是单元测试,最顶端是界面测试。从三者的面积大小来看,单元测试和接口测试,才是重点,而界面测试真的是太少。这个面积,你可
系统 2019-09-27 17:52:16 2252
在写正则表达式的时候总会遇到不少的问题,特别是在表达式有多个元组的时候。下面看下re模块下的findall()函数和多个表达式元组相遇的时候会出现什么样的坑。代码如下:importrestr="abcd"regex0=re.compile("((\w+)\s+\w+)")print(regex0.findall(str))regex1=re.compile("(\w+)\s+\w+")print(regex1.findall(str))regex2=re.
系统 2019-09-27 17:51:48 2252
elasticsearchpython查询的两种方法,具体内容如下所述:fromelasticsearchimportElasticsearches=Elasticsearchres1=es.search(index="2018-07-31",body={"query":{"match_all":{}}})print(es1){'_shards':{'failed':0,'skipped':0,'successful':5,'total':5},'hits
系统 2019-09-27 17:51:02 2252
我们开始来谈谈python的爬虫。1,什么是爬虫:网络爬虫是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。互联网犹如一个大蜘蛛网,我们的爬虫就犹如一个蜘蛛,当在互联网遇到所需要的资源,我们就会爬取下来,即为爬虫是一个请求网站并且提取数据的自动化程序。2,下面我们来提到两个名词:1)请求,request即为我们的请求,当我们在浏览器内输入网址,敲击回车时,这时浏览器就会发送消息给该网址所在
系统 2019-09-27 17:50:56 2252
Python编程语言已经成为IT中使用的最流行的语言之一。成功的一个原因是它可以用来解决各种问题。从网站开发到数据科学、机器学习到任务自动化,Python生态系统有丰富的框架和库。本文将介绍一些有用的Pythonshell来简化我们的开发。PythonShellPythonShell即原生的Python交互环境,可以让你以交互模式使用Python解释器。这在测试代码或尝试新库时非常有用。在Ubuntu中,你可以通过在终端会话中输入python来调用默认的s
系统 2019-09-27 17:50:52 2252
【1】简介Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。正如定义中提到的,选择使用它的目的,正是为了简化简化包管理和部署,最主要的是遇到了环境切换问题,clone下的代码,有些是Python2.x版本,有些是Python3.x版本,对于初学者着实头疼。【2】包管理更新所有包:condaupgrade
系统 2019-09-27 17:49:36 2252
概述如果你已经阅读过上一个章节,那么你应该已经完成了充分的准备工作并且创建了一个很简单的具有如下文件结构的Web应用:microblog|-flask文件夹|-<一些虚拟环境的文件>|-app文件夹||-static文件夹||-templates文件夹||-__init__.py文件||-views.py文件|-tmp文件夹|-run.py文件亲,想要运行这个程序么?那就运行这个run.py文件,然后在你的浏览器里边打开http://localhost:5
系统 2019-09-27 17:49:00 2252
动态链接库在Windows中为.dll文件,在linux中为.so文件。以linux平台为例说明python调用.so文件的使用方法。本例中默认读者已经掌握动态链接库的生成方法,如果不太清楚的可以参考动态链接库的使用调用上例动态链接库的使用中的sum.soimportctypesso=ctypes.CDLL('./sum.so')print"so.sum(50)=%d"%so.sum(50)so.display("helloworld!")print"so
系统 2019-09-27 17:47:56 2252
NumPy是一个优秀的科学计算库,提供了很多实用的数学函数、强大的多维数组对象和优异的计算性能,不仅可以取代Matlab和Mathematica的许多功能,而且业已成为Python科学计算生态系统的重要组成部分。但与这些商业产品不同,它是免费的开源软件。本书从NumPy安装讲起,逐渐过渡到数组对象、常用函数、矩阵运算、线性代数、金融函数、窗函数、质量控制等内容,致力于向初中级Python编程人员全面讲述NumPy及其使用。另外,通过书中丰富的示例,你还将学
系统 2019-09-27 17:47:44 2252
一、说明类似json将xml解析为python对象,可以使用第三方库untangle或xmltodict实现。将以下内容保存为xml2obj.xml,后我我们就使用该文件。1.第一行的是xml文件的声明,它定义了xml的版本(1.0)和所使用编码为UTF-8。2.接下来就是xml文件的内容了,这些内容按一个树状结构进行组织摆放,形式如下:section1contentsection2content其中,每一个.叫做一个节点,也叫一个元素,节点可以嵌套放置,
系统 2019-09-27 17:46:25 2252
概述在我们使用内置打印函数print时,打印出的Python数据结构对象总是一行的输出的方式,这样对数据结构较复杂或数据较多的对象的显示并不美观,这时我们可以利用pprint输出美化数据结构对象。pprint方法概览美化输出我们可以利用pprint中的PrettyPrinter控制输出的打印时的缩进,行宽、甚至打印深度等,定义类如下classpprint.PrettyPrinter(indent=1,width=80,depth=None,stream=N
系统 2019-09-27 17:45:58 2252