这次只演示了,如何在真实项目内用到BeautifulSoup库来解析网页,而新浪的新闻是ajax加载过来的数据,在这里我们只演示解析部分数据(具体反扒机制没做分析)。代码地址:https://gitee.com/dwyui/BeautifulSoup_xinlang.git。关于的爬虫的博客已经越来越多,使用到的技术也越来越多,后期我还会持续写下去,大概从几个角度去写,多线程爬取(提高效率),如何更好的做到爬取数据(破解反扒)。用redis管理多线程和代理
系统 2019-09-27 17:45:54 1716
今天在写爬虫程序的时候由于要翻页,做除法分页的时候出现了复制代码代码如下:totalCount='100'totalPage=int(totalCount)/20ValueError:invalidliteralforint()withbase10的错误网上同样的错误有人建议用round(float(“1.0″)),但是解决不了我这个问题,round(float(“1.0″))是用于解决浮点数转换为整形数的,而我这个则是因为原字符串转换为整形后做除法,虽然
系统 2019-09-27 17:45:38 1716
今天来讨论一下装饰器。装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用。概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能。1.装饰器入门1.1.需求是怎么来的?装饰器的定义很是抽象,我们来看一个小例子。复制代码代码如下:deffoo():print'infoo()'foo()这是一个很无聊
系统 2019-09-27 17:45:33 1716
当安装好python之后,其实就已经可以进行开发了。下面我们开始写第一行python代码。值得纪念的时刻:Helloworld如果是用windows,请打开CMD,并执行python。如果是UNIX类的,就运行shell,并执行python。都会出现如下内容:Python2.7.6(default,Nov132013,19:24:16)[GCC4.6.3]onlinux2Type"help","copyright","credits"or"license"
系统 2019-09-27 17:45:25 1716
有些时候我们不得不在自己的代码里写上密码,为了安全起见,我们可以为自己的密码加密先上段代码,这个代码是转自网上root@ProFtp:/usr/lib/python2.7#morejastmencrypt.py"""jastmeencryptpassword"""defencrypt(key,s):b=bytearray(str(s).encode("gbk"))n=len(b)#求出b的字节数c=bytearray(n*2)j=0foriinrange(
系统 2019-09-27 17:38:35 1716
我们将要来学习python的重要概念迭代和迭代器,通过简单实用的例子如列表迭代器和xrange。可迭代一个对象,物理或者虚拟存储的序列。list,tuple,strins,dicttionary,set以及生成器对象都是可迭代的,整型数是不可迭代的。如果你不确定哪个可迭代哪个不可以,你需要用python内建的iter()来帮忙。>>>iter([1,2,3])>>>iter({1:2,2:4})>>>iter(1234)Traceback(mostrece
系统 2019-09-27 17:38:24 1716
本来是想写一个东西可以直接调用TortoiseSVN保存当前代码到一个分枝下的。可惜调用SVN的部分还在研究。就先写了目录拷贝的部分。如果有喜欢研究Python的童鞋愿意提供想法或者建议的话,这里先谢谢了。:)就目录拷贝的部分,思想很简单。读配置文件中的配置信息。生成一个项目名称加日期时间组成的文件夹名为分枝名称。把当前项目下的全部内容拷贝到这个目录下。然后要做的研究就是调用TortoiseSVN命令嵌入这部分代码。现在看代码:1.读取配置文件配置文件很简
系统 2019-09-27 17:38:23 1716
1.getattr()函数是Python自省的核心函数,具体使用大体如下:classA:def__init__(self):self.name='zhangjing'#self.age='24'defmethod(self):print"methodprint"Instance=A()printgetattr(Instance,'name,'notfind')#如果Instance对象中有属性name则打印self.name的值,否则打印'notfind'
系统 2019-09-27 17:38:16 1716
安装Tornado省事点可以直接用grequests库,下面用的是tornado的异步client。异步用到了tornado,根据官方文档的例子修改得到一个简单的异步爬虫类。可以参考下最新的文档学习下。pipinstalltornado异步爬虫#!/usr/bin/envpython#-*-coding:utf-8-*-importtimefromdatetimeimporttimedeltafromtornadoimporthttpclient,gen,
系统 2019-09-27 17:38:10 1716
Python安装Django本身是纯Python编写的,所以安装框架的第一步是确保你已经安装了Python。Python版本核心Django框架可以工作在2.3至2.6(包括2.3和2.6)之间的任何Python版本。Django的可选GIS(地理信息系统)支持需要Python2.4到2.6。如果你不确定要安装Python的什么版本,并且你完全拿不定主意的话,那就选2.x系列的最新版本吧。版本2.6。虽然Django在2.3至2.6版之间的任意Python
系统 2019-09-27 17:37:57 1716