首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python爬虫学习

python爬虫学习

原创
作者头像
conanma
修改于 2021-11-01 06:28:35
修改于 2021-11-01 06:28:35
31502
代码可运行
举报
文章被收录于专栏:正则正则
运行总次数:2
代码可运行

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

根据我的经验,要学习Python爬虫,我们要学习的共有以下几点:

Python基础知识

Python中urllib和urllib2库的用法

Python正则表达式

Python爬虫框架Scrapy

Python爬虫更高级的功能

1.Python基础学习

首先,我们要用Python写爬虫,肯定要了解Python的基础吧,万丈高楼平地起,不能忘啦那地基,哈哈,那么我就分享一下自己曾经看过的一些Python教程,小伙伴们可以作为参考。

1) Python学习网

Python学习网上有大量免费的Python入门教程,以便大家学习。不仅有视频教程,还有相应的问答版块,帮你解决学习过程中的问题,效果还是蛮不错的,内容基本上都是最基础的,入门开始的话,就这个吧

2) 廖雪峰Python教程

后来,我发现了廖老师的Python教程,讲的那是非常通俗易懂哪,感觉也是非常不错,大家如果想进一步了解Python就看一下这个吧。

3) 简明Python教程

还有一个我看过的,简明Python教程,感觉讲的也不错

学习网址:简明Python教程(https://woodpecker.org.cn/abyteofpython_cn/chinese/pr01.html#s01)

4) 汪海的实验室

这是我的本科实验室学长,入门的时候参考的他的文章,自己重新做了总结,后来这些系列文章又在他的基础上增加了一些内容。

学习网址:汪海的实验室(https://blog.csdn.net/wxg694175346/category_1418998_1.html)

2.Python urllib和urllib2 库的用法

urllib和urllib2库是学习Python爬虫最基本的库,利用这个库我们可以得到网页的内容,并对内容用正则表达式提取分析,得到我们想要的结果。这个在学习过程中我会和大家分享的。

3.Python 正则表达式

Python正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。这个在后面的博文会分享的。

4.爬虫框架Scrapy

如果你是一个Python高手,基本的爬虫知识都已经掌握了,那么就寻觅一下Python框架吧,我选择的框架是Scrapy框架。这个框架有什么强大的功能呢?下面是它的官方介绍:

HTML, 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解析器

官方文档:http://doc.scrapy.org/en/latest/

等我们掌握了基础的知识,再用这个 Scrapy 框架吧!

扯了这么多,好像没多少有用的东西额,那就不扯啦!

知识点扩展:

爬虫基本原理

爬虫是 模拟用户在浏览器或者App应用上的操作,把操作的过程、实现自动化的程序

当我们在浏览器中输入一个url后回车,后台会发生什么?比如说你输入https://www.baidu.com

简单来说这段过程发生了以下四个步骤:

查找域名对应的IP地址。

浏览器首先访问的是DNS(Domain Name System,域名系统),dns的主要工作就是把域名转换成相应的IP地址向IP对应的服务器发送请求。

服务器响应请求,发回网页内容。

浏览器显示网页内容。

网络爬虫要做的,简单来说,就是实现浏览器的功能。通过指定url,直接返回给用户所需要的数据, 而不需要一步步人工去操纵浏览器获取。

到此这篇关于python爬虫基础知识点整理的文章就介绍到这了,更多相关Python2爬虫入门内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
基于UIAutomation+Python+Unittest+Beautifulreport的WindowsGUI自动化测试框架common目录解析
注: 1、本文为本站首发,他用请联系作者并注明出处,谢谢! 2、源码解析/common目录 ---- 1 框架工具说明 工具 说明 使用Unittest框架 开源自动化测试框架,直接使用 批量或指定用例运行 Unittest框架可支持此功能 log日志 使用Python的logging库即可 生成HTML测试报告 使用BeautifulReport模块可实现此功能 用例设计和结果分离 PO模式 用户登录封装 直接把登录功能模块化,使用Unittest框架中的setup,teardown即可 定制测试报告模板
虫无涯
2023/02/17
9340
基于UIAutomation+Python+Unittest+Beautifulreport的WindowsGUI自动化测试框架主入口main解析
注:1、本文为本站首发,他用请联系作者并注明出处,谢谢!2、源码解析/mian入口说明、testcase说明、page说明1 main.py主入口# -*- coding:utf-8 -*-# 作者:虫无涯# 日期:2023/2/17# 文件名称:main.py# 作用:框架的主入口函数# coding=utf-8import timefrom common.reportOut import report_outfrom common.logOut import log_outfrom common.sen
虫无涯
2023/02/17
4930
自动化测试报告样式HTMLTestRunner、BeautifulReport、HTMLReport、Allure你喜欢哪个?
https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/
虫无涯
2023/07/07
1.3K0
python requests+unittest+BeautifulReport实现自动化接口测试的简单实现
大家呢也是了解了python requests的基本用法了,那么咱们就应用上单元测试框架unittest还有BeautifulReport简单的实现一下自动化的接口测试
找Bug
2022/07/22
2290
python requests+unittest+BeautifulReport实现自动化接口测试的简单实现
HTMLReport应用之Unittest+Python+Selenium+HTMLReport项目自动化测试实战
注意事项:【本文字数包含代码38175字,建议慢慢看~哈哈哈】1、以下仅为举例,具体以自身实际项目为准;2、以下内容重点是介绍HTMLReport的应用,并不是说明如何搭建框架;3、如果想了解框架内容,可移步博主有关测试框架的系列文章;4、写了一个用例,用例中没有加断言,只是为了生成测试报告,可以忽略;5、用例故意写错了3个,1个通过,是为了生成测试报告数据。1 测试框架结构图片图片目录/脚本说明common/reportOut.py 这是是用HTMLReport生成报告的common/sendMain.p
虫无涯
2023/03/14
12.7K2
Unittest接口和UI自动化测试框架中的发送邮件服务如何使用?
在写Unittest接口和UI自动化测试的时候,需要封装邮件模块来进行发送邮件。如何做呢?简单做一下整理。
虫无涯
2023/01/30
1.2K0
移动端自动化测试框架搭建
  2. 其中公共库中大致有Appium的操作、Excel档的操作、手机信息的配置、测试用例信息的收集、测试结果文件夹的生产 、测试报告的写入、邮件发送等公共方法
py3study
2020/02/10
6780
测试报告-BeautifulReport报告
这是一个基于unittest.TestReport模块实现的测试用例模板,可以把我们每次测试中的结果通过BeautifulReport整合成一个可视化的报表。
wangmcn
2022/07/25
8250
测试报告-BeautifulReport报告
API自动化测试笔记(三):应用多线程+合并测试报告
不同测试框架有不同的地方,这里以unittest框架+BeautifulReport为例进行说明。
free赖权华
2020/05/04
6750
Selenium 自动化综合实践
无头浏览器即headless browser,是一种没有界面的浏览器。既然是浏览器那么浏览器该有的东西它都应该有,只是看不到界面而已。
清风穆云
2021/08/09
4010
python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告(优化版)
python+requests+excel+unittest+ddt接口自动化数据驱动并生成html报告
虫无涯
2023/01/31
7370
unittest框架核心要素及应用
1. unittest核心要素 unittest介绍 测试框架,不仅仅用于单元测试 python自动的测试包 用法和django.test.TestCase类似 1.1【知道】unittest介绍和核心要素 image.png 1.2【掌握】unittest核心要素的使用 """ 1. 测试用例 2. 容器,容器添加测试用例 3. 运行容器中的测试用例 """ import unittest ​ # 测试类,继承于unittest.TestCase class MyTest(unittest.TestC
用户1880875
2021/08/26
5050
Appium自动化测试框架探索与实践
在目前效率为王的互联网时代,移动应用自动化测试逐渐替代原始的手工功能测试,越来越成为测试界的时尚宠儿,小编在这里也为大家介绍下现有的客户端自动化测试框架:Appium、Airtest,并简单比较下两者的区别,同时重点介绍Appium自动化测试框架,大家跟随小编的脚步一起来探索客户端自动化测试框架吧~
用户5521279
2020/08/21
3.8K0
Appium自动化测试框架探索与实践
python接口自动化(三十)--html测试报告通过邮件发出去——中(详解)
  上一篇,我们虽然已经将生成的最新的测试报告发出去了,但是MIMEText 只能发送正文,无法带附件,因此我还需要继续改造我们的代码,实现可以发送带有附件的邮件。发送带附件的需要导入另外一个模块 MIMEMultipart。还有就是测
北京-宏哥
2019/09/11
2K0
python接口自动化(三十)--html测试报告通过邮件发出去——中(详解)
回顾18年我的Java自动化测试框架
18年的时候,根据项目组需要,编写了一套 Java 版的自动化测试框架,可进行包括 APP(Android、iOS)、H5、Web、接口的自动化测试任务。测试报告可通过 HTML 报告或 Excel 报告的方式进行查看。此框架在项目组期间已落地使用并助力测试回归时发现了一些问题(BUG)。
wangmcn
2022/07/26
8600
回顾18年我的Java自动化测试框架
unittest测试框架组成_unittest接口自动化
unittest 是python 的单元测试框架。unittest 单元测试提供了创建测试用例,测试套件以及批量执行的方案, unittest 在安装pyhton 以后就直接自带了,直接import unittest 就可以使用。
全栈程序员站长
2022/11/04
5380
看到就是赚到!Selenium完整框架——告别2017
这个框架大家可以拿过去直接用——作为送给大家的元旦礼物——船长对你们简直太好了! 学了这么长时间,又是定位,又是发邮件,还有乱七八糟的unittest,现在时候后把东西用起来了~而且
孟船长
2018/05/18
9420
Appium PO模式UI自动化测试框架——设计与实践
相信做过测试的同学都听说过自动化测试,而UI自动化无论何时对测试来说都是比较吸引人的存在。相较于接口自动化来说它可以最大程度的模拟真实用户的日常操作与特定业务场景的模拟,那么存在即合理,自动化UI测试自然也是广大测试同学职业道路上必不可少的必修课题之一了。
Austin_zhai
2022/11/01
1.2K0
Appium PO模式UI自动化测试框架——设计与实践
H5-UI自动化实现
官网:https://chromedriver.chromium.org/downloads 国内:https://npm.taobao.org/mirrors/chromedriver/ 将文件拖入项目中: driver_path = BASEDIRPATH + '/chromedriver'
沈宥
2022/05/10
6690
H5-UI自动化实现
Appium自动化测试框架综合实践
注册一个新的账号(账户和密码可以随机生成),完善院校和专业信息 (如:院校:上海-同济大学 专业:经济学类-统计学-经济统计学)
清风穆云
2021/08/09
7600
推荐阅读
相关推荐
基于UIAutomation+Python+Unittest+Beautifulreport的WindowsGUI自动化测试框架common目录解析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验