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

news/2024/7/19 10:11:55 标签: 爬虫, 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爬虫入门一之综述

 

转载于:https://www.cnblogs.com/Attenton/p/5653188.html


http://www.niftyadmin.cn/n/822638.html

相关文章

html5资源

http://caniuse.com/ http://html5test.com/ http://fmbip.com/ http://www.modernizr.com/ http://samples.msdn.microsoft.com/ietestcenter/

平衡二叉树 AVL树结构详解 [Java实现]--源码部分

作者NeroJings来源https://blog.csdn.net/zhang6622056/article/details/82698859正文部分见:平衡二叉树 AVL树结构详解 [Java实现]完整源码END

jquery中is()方法和判断是否勾选

定义和用法 is() 根据选择器、元素或 jQuery 对象来检测匹配元素集合,如果这些元素中至少有一个元素匹配给定的参数,则返回 true。 .is(:visible)):可用于检测是否可见 is(:checked):检测是否勾选 is(‘.classname’)&#xf…

现身说法:37岁老码农找工作

作者自由飞来源https://www.cnblogs.com/freeflying/p/9950374.html前几天突然接到dk的电话,要和我聊聊天。他说他们部门调整,虽然最后他留了下来,但还是非常焦虑。人无远虑必有近忧,他这次被刺激到了,想提高一下自己&…

解决ubuntu字符界面下中文乱码

1. 字符界面乱码: 字符界面默认不显示中文,全是菱形符号,这样大大限制了中文用户的使用.解决办法如下: 首先安装zhcon: $sudo apt-get install zhcon 这样我们可以通过启动zhcon来显示中文,但是此时不能直接输入zhcon,否则会黑 屏,正确的做法是: $zhcon –utf8 –drvvga

三条线 (Standard IO)

题意/Description: 为了监视他的N (1 < N < 50,000)头奶牛&#xff0c;Farmer John购买了新的监视系统。第i头奶牛位置在(x_i, y_i)&#xff0c;坐标为整数&#xff0c;范围0..1,000,000,000。任意两头奶牛的位置不同。 FJ的监视系统有三个摄像头&#xff0c;每个…

HTML5新标签

结构标签 <section></section>: 区段 <article></article> : 定义独立的内容(论坛帖子/报纸文章/博客条目/用户评论) <aside></aside> : 定义其所处内容之外的内容(侧栏) <header></header> : 定义文档的页眉&#xff0…

基于SpringCloud的微服务架构演变史?

导读一段时期以来 “微服务架构 ”一直是一个热门词汇&#xff0c;各种技术类公众号或架构分享会议上&#xff0c;关于微服务架构的讨论和主题也都非常多。对于大部分初创互联网公司来说&#xff0c;早期的单体应用结构才是最合适的选择&#xff0c;只有当业务进入快速发展期&a…