python教程---爬虫入门教程一

此次教程使用的python版本为2.7!!!

在刚上大学之时,总是在网上看到什么爬虫,因为当时还在学习c++,没有时机学习python,更没有去学习爬虫了,而趁着这次工程实训学习了基本的python的使用,于是有提起了学习爬虫的兴致,也写下了这个系列的博客,以记录自己的积累

下面进入正题:

爬虫是什么?

网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。

在学习爬虫时需要用到那些知识呢?

  • Python基础知识
  • Python中urllib和urllib2库的用法
  • Python正则表达式
  • Python爬虫框架Scrapy
  • Python爬虫更高级的功能

1.Python基础知识学习

这个是在网上学习时经常用到的资源:

a)廖雪峰Python教程

b)Python官方文档

2.关于urllib和urllib2库的使用

网上有教程,之后的博客也会有我自己的学习介绍,不过最佳的学习应该就是到官方文档中学习了。

3.正则表达式

由于我也还是初学,也只是了解一点,现在还不能给出很好的学习经验,不过多用用搜索引擎,应该是能够 学的很快的

4.爬虫框架Scrapy

在爬虫的基本知识已经完全熟练之后,就可以尝试去使用框架完成更好的东西。我在学习过程中学习的是Scrapy框架,官方文档的介绍是这样的:

TML, XML源数据 选择及提取 的内置支持
提供了一系列在spider之间共享的可复用的过滤器(即 Item Loaders),对智能处理爬取数据提供了内置支持。
通过 feed导出 提供了多格式(JSON、CSV、XML),多存储后端(FTP、S3、本地文件系统)的内置支持
提供了media pipeline,可以 自动下载 爬取到的数据中的图片(或者其他资源)。
高扩展性。您可以通过使用 signals ,设计好的API(中间件, extensions, pipelines)来定制实现您的功能。
内置的中间件及扩展为下列功能提供了支持:
cookies and session 处理
HTTP 压缩
HTTP 认证
HTTP 缓存
user-agent模拟
robots.txt
爬取深度限制
针对非英语语系中不标准或者错误的编码声明, 提供了自动检测以及健壮的编码支持。
支持根据模板生成爬虫。在加速爬虫创建的同时,保持在大型项目中的代码更为一致。详细内容请参阅 genspider 命令。
针对多爬虫下性能评估、失败检测,提供了可扩展的 状态收集工具 。
提供 交互式shell终端 , 为您测试XPath表达式,编写和调试爬虫提供了极大的方便
提供 System service, 简化在生产环境的部署及运行
内置 Web service, 使您可以监视及控制您的机器
内置 Telnet终端 ,通过在Scrapy进程中钩入Python终端,使您可以查看并且调试爬虫
Logging 为您在爬取过程中捕捉错误提供了方便
支持 Sitemaps 爬取
具有缓存的DNS解析器

Scrapy官方文档

参考博客:Python爬虫入门一之综述

时间: 2024-11-09 18:49:42

python教程---爬虫入门教程一的相关文章

ibatis入门教程一

这几天研究ibatis玩,参考一篇贴子进行安装配置:蓝雪森林 选择这个帖子来跟随配置是因为这个帖子看着比较干净,但是我仍旧在配置得过程中出现了好几个问题,所以我决定在这个帖子的基础上将更多细节加上,做一个傻瓜教程. 一.前期准备 虽然ibatis能处理多种数据库,不过初学者还是比较适应mysql,因此我选择mysql作为我的数据载体.另外我准备建的是一个普通的java 工程,并采用maven命令行来建立这个工程.所以在这之前,电脑上需要安装maven和mysql. 二.工程建立 ①使用maven

python网络爬虫入门(一)——简单的博客爬虫

最近,为了微信公众号的图文,上网疯狂的收集和看了一些有深度的新闻和有趣的引人深思的文字评论,并选择了几篇极品发布出去.但感觉一篇一篇的看实在是麻烦死了.想找一个简单的解决办法,看能不能自动把网上的资料收集起来,然后自己用统一筛选.不巧,最近准备学习下网络爬虫相关知识,于是按照网上的教程自己学着试写了一个小小的爬虫,嘻嘻,是用来爬韩寒博客的. 先把完整的代码贴上来,如果朋友们需要试验下,请先安装python相关环境,然后在复制粘贴保存,再按F5运行. #导入urllib库,python访问网页必须

python网络爬虫入门(二)——用python简单实现调用谷歌翻译

最近在看国外的文档,有些生词不认识.就用谷歌翻译来理解,用着用着闲来无事就按F12查看了下页面的源代码.发现可以用python简单的实现下谷歌翻译的页面功能.于是先上网搜下有没有类似的文章博客,发现几篇不错的,于是参考其他代码与自己的思路,简单的实现了下翻译的功能,代码如下: import re import urllib,urllib2 #----------模拟浏览器的行为,向谷歌翻译发送数据,然后抓取翻译结果,这就是大概的思路------- def Gtranslate(text): #t

Python简单爬虫入门二

接着上一次爬虫我们继续研究BeautifulSoup Python简单爬虫入门一 上一次我们爬虫我们已经成功的爬下了网页的源代码,那么这一次我们将继续来写怎么抓去具体想要的元素 首先回顾以下我们BeautifulSoup的基本结构如下 #!/usr/bin/env python # -*-coding:utf-8 -*- from bs4 import BeautifulSoup import requests headers = { 'User-Agent':'Mozilla/5.0 (Win

python网络爬虫入门

python网络爬虫入门(一) 网络爬虫的定义 1.网络蜘蛛.网络机器人,抓取网络数据的程序. 2.其实就是用Python(其他语言也可以这里介绍python)程序模仿人点击浏览器并访问网站,而且模仿的越逼真越好. 对比几种语言 1.Python :请求模块.解析模块丰富成熟,强大的Scrapy网络爬虫框架 2.PHP :对多线程.异步支持不太好 3.JAVA:代码笨重,代码量大 4.C/C++:虽然效率高,但是代码成型慢 爬取数据的一般步骤 1.确定需要爬取的URL地址 2.由请求模块向URL

Python网络爬虫入门,带你领略Python爬虫的乐趣!

前段时间小编写了一篇有关于Python入门的文章,我觉得写的还是不够好,所以我特地补上一篇Python爬虫的入门的,本文特别适合Python小白,刚学习爬虫不久.接下来就让我们一起来写第一个例子吧! 一.我们的目标 1.作为第一个例子,我就以抓取糗事百科热门贴为例吧 2.糗事百科热门帖,获取其发布者.评论.点赞数.评论等信息 3.将信息清洗并打印,循环输出 4.设计程序,使可以选择抓取的页面范围 5.将每一页的信息保存到文本 二.开发环境介绍 phthon 2.7.13 IDE:PyCharm

Python网络爬虫入门篇

1.  预备知识 学习者需要预先掌握Python的数字类型.字符串类型.分支.循环.函数.列表类型.字典类型.文件和第三方库使用等概念和编程方法. 2. Python爬虫基本流程 a. 发送请求 使用http库向目标站点发起请求,即发送一个Request,Request包含:请求头.请求体等. Request模块缺陷:不能执行JS 和CSS 代码. b. 获取响应内容 如果requests的内容存在于目标服务器上,那么服务器会返回请求内容. Response包含:html.Json字符串.图片,

python 网络爬虫入门笔记

参考:http://www.cnblogs.com/xin-xin/p/4297852.html 一.简介 爬虫即网络爬虫,如果将互联网比做成一张大网,那么蜘蛛就是爬虫.如果它遇到资源,将会抓取下来. 二.过程 在我们浏览网页时,我们经常会看到一些形形色色的页面,其实这个过程就是我们输入url,经DNS解析成对应的ip找到对应的服务器主机,向服务器发出一个请求,服务器经过解析之后将html,js等发回浏览器显示. 其实爬虫和这个过程差不多,只不过我们在抓取到html后,通过正则表达式来确定要获取

python scrapy爬虫入门

Scrapy 是一个python下的网络爬虫工具,目前只有python2.x的版本. 安装 Scrapy需要的支持库比较多,安装时挺繁琐的,测试直接用easy_install 或者 pip安装会自动下载安装需要的支持库,但是因为网络或其他种种原因总是安装失败,最好还是各个安装包分开安装. 下载安装Microsoft Visual C++ 2008 Redistributable Package(注意链接是64位)  http://www.microsoft.com/en-us/download/