
Python爬虫入门教程
文章平均质量分 84
简单的介绍如何使用Python的相关模块如urllib2来实现网络爬虫的基础教程。
请叫我汪海
专注前端开发的iOS程序员,喜欢Debian和Python,以及各种有趣的东西,梦想成为一位独立游戏开发者,做自己喜欢的游戏。
展开
-
[Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
爬虫框架Scrapy的第一个爬虫示例入门教程。我们使用dmoz.org这个网站来作为小抓抓一展身手的对象。首先先要回答一个问题。问:把网站装进爬虫里,总共分几步?答案很简单,四步: 新建项目 (Project):新建一个新的爬虫项目 明确目标(Items):明确你想要抓取的目标 制作爬虫(Spider):制作爬虫开始爬取网页 存储内容(Pipeline):设计管道存储爬取内容好的,基本流程既然确定了,那接下来就一步一步的完成就可以了。原创 2014-02-23 20:52:42 · 213557 阅读 · 84 评论 -
[Python]网络爬虫(11):亮剑!爬虫框架小抓抓Scrapy闪亮登场!
前面十章爬虫笔记陆陆续续记录了一些简单的Python爬虫知识,用来解决简单的贴吧下载,绩点运算自然不在话下。不过要想批量下载大量的内容,比如知乎的所有的问答,那便显得游刃不有余了点。于是乎,爬虫框架Scrapy就这样出场了!Scrapy = Scrach+Python,Scrach这个单词是抓取的意思,暂且可以叫它:小抓抓吧。小抓抓的官网地址:点我点我。原创 2014-02-21 17:52:35 · 64907 阅读 · 18 评论 -
[Python]网络爬虫(十):一个爬虫的诞生全过程(以山东大学绩点运算为例)
先来说一下我们学校的网站:http://jwxt.sdu.edu.cn:7777/zhxt_bks/zhxt_bks.html查询成绩需要登录,然后显示各学科成绩,但是只显示成绩而没有绩点,也就是加权平均分。显然这样手动计算绩点是一件非常麻烦的事情。所以我们可以用python做一个爬虫来解决这个问题。1.决战前夜先来准备一下工具:HttpFox插件。这是原创 2013-07-12 13:46:47 · 95425 阅读 · 104 评论 -
[Python]网络爬虫(九):百度贴吧的网络爬虫(v0.4)源码及解析
百度贴吧的爬虫制作和糗百的爬虫制作原理基本相同,都是通过查看源码扣出关键数据,然后将其存储到本地txt文件。项目内容:用Python写的百度贴吧的网络爬虫。使用方法:新建一个BugBaidu.py文件,然后将代码复制到里面后,双击运行。程序功能:将贴吧中楼主发布的内容打包txt存储到本地。原理解释:首先,先浏览一下某一条贴吧,点击只看楼主并点击第二页之后ur原创 2013-05-16 13:48:49 · 85258 阅读 · 73 评论 -
[Python]网络爬虫(八):糗事百科的网络爬虫(v0.3)源码及解析(简化更新)
项目内容:用Python写的糗事百科的网络爬虫。使用方法:新建一个Bug.py文件,然后将代码复制到里面后,双击运行。程序功能:在命令提示行中浏览糗事百科。原理解释:首先,先浏览一下糗事百科的主页:http://www.qiushibaike.com/hot/page/1可以看出来,链接中page/后面的数字就是对应的页码,记住这一点为以后的编写做准备。然后原创 2013-05-15 20:59:28 · 98616 阅读 · 161 评论 -
[Python]网络爬虫(七):Python中的正则表达式教程
接下来准备用糗百做一个爬虫的小例子。但是在这之前,先详细的整理一下Python中的正则表达式的相关内容。正则表达式在Python爬虫中的作用就像是老师点名时用的花名册一样,是必不可少的神兵利器。以下内容转自CNBLOG:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html整理时没有注意,实在抱歉。转载 2013-05-15 13:29:50 · 149397 阅读 · 21 评论 -
[Python]网络爬虫(五):urllib2的使用细节与抓站技巧
前面说到了urllib2的简单入门,下面整理了一部分urllib2的使用细节。1.Proxy 的设置urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。如果想在程序中明确控制 Proxy 而不受环境变量的影响,可以使用代理。新建test14来实现一个简单的代理Demo:import urllib2enable_proxy = Tru原创 2013-05-14 16:21:06 · 141269 阅读 · 25 评论 -
[Python]网络爬虫(四):Opener与Handler的介绍和实例应用
在开始后面的内容之前,先来解释一下urllib2中的两个个方法:info and geturl urlopen返回的应答对象response(或者HTTPError实例)有两个很有用的方法info()和geturl()1.geturl():这个返回获取的真实的URL,这个很有用,因为urlopen(或者opener对象使用的)或许会有重定向。获取的URL或许跟请求URL不同。以原创 2013-05-14 15:09:37 · 110552 阅读 · 23 评论 -
[Python]网络爬虫(三):异常的处理和HTTP状态码的分类
先来说一说HTTP的异常处理问题。当urlopen不能够处理一个response时,产生urlError。不过通常的Python APIs异常如ValueError,TypeError等也会同时产生。HTTPError是urlError的子类,通常在特定HTTP URLs中产生。 1.URLError通常,URLError在没有网络连接(没有路由到特定服务器),或者服务器不原创 2013-05-14 09:51:31 · 158574 阅读 · 37 评论 -
[Python]网络爬虫(二):利用urllib2通过指定的URL抓取网页内容
所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。 类似于使用程序模拟IE浏览器的功能,把URL作为HTTP请求的内容发送到服务器端, 然后读取服务器端的响应资源。在Python中,我们使用urllib2这个组件来抓取网页。urllib2是Python的一个获取URLs(Uniform Resource Locators)的组件。它以urlopen函原创 2013-05-13 23:45:28 · 309717 阅读 · 91 评论 -
[Python]网络爬虫(一):抓取网页的含义和URL基本构成
一、网络爬虫的定义网络爬虫,即Web Spider,是一个很形象的名字。把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。网络蜘蛛是通过网页的链接地址来寻找网页的。从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一原创 2013-05-13 22:30:54 · 341972 阅读 · 67 评论