urllib 是python内置的基本库,提供了一系列用于操作URL的功能,我们可以通过它来做一个简单的爬虫. 0X01 基本使用 简单的爬取一个页面: import urllib2 request = urllib2.Request("http://www.cnblogs.com") response = urllib2.urlopen(request) print response.read() GET方式 import urllib import urllib2 values =…
Requests是Python的一个优雅而简单的HTTP库,它比Pyhton内置的urllib库,更加强大. 0X01 基本使用 安装 Requests,只要在你的终端中运行这个简单命令即可: pip install requests 基本HTTP 请求类型: r = requests.get('http://httpbin.org/get') r = requests.post("http://httpbin.org/post") r = requests.put("htt…
在进行python爬虫学习前,需要进行如下准备工作: python3+pip官方配置 1.Anaconda(推荐,包括python和相关库)   [推荐地址:清华镜像] https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ [安装过程中注意选择自动添加path到环境变量中,未选择需要自己添加] 红色提示的意思是:自动添加的环境变量会处于最前面,自动成为默认,可能会使原本使用默认的软件报错,未防止以上问题,可以打开环境变量后,调整顺序将Ana…
1. urllib2的opener和handler概念 1.1 Openers: 当你获取一个URL你使用一个opener(一个urllib2.OpenerDirector的实例).正常情况下,我们使用默认opener:通过urlopen.但你能够创建个性的openers.可以用build_opener来创建opener对象.一般可用于需要处理cookie或者不想进行redirection的应用场景(You will want to create openers if you want to f…
1.urllib2简介 urllib2的是爬取URL(统一资源定位器)的Python模块.它提供了一个非常简单的接口,使用urlopen函数.它能够使用多种不同的协议来爬取URL.它还提供了一个稍微复杂的接口,用于处理常见的情况 - 如基本身份验证,cookies,代理等. 2.抓取URLs 使用urlib2的简单方式可以像下面一样: import urllib2 response = urllib2.urlopen('http://python.org/') html = response.r…
Cookies: 以抓取https://www.yaozh.com/为例 Test1(不使用cookies): 代码: import urllib.request # 1.添加URL url = "https://www.yaozh.com/" # 2.添加请求头 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, l…
1. Beautiful Soup简介     Beautiful Soup是将数据从HTML和XML文件中解析出来的一个python库,它能够提供一种符合习惯的方法去遍历搜索和修改解析树,这将大大减少爬虫程序的运行时间. Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码.你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup就不能自动识别编码方式了.然后,你仅仅需要说明一下原始编码方式就可以了. Beautiful…
知识预览 beautifulsoup的简单使用 beautifulsoup的遍历文档树 beautifulsoup的搜索文档树 beautifulsoup的css选择器 回到顶部 beautifulsoup的简单使用 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: ''' Beautiful Soup提供一些简单的.python式的函数用来处理导航.搜索.修改分析树等功能. 它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单…
1. 正则表达式 正则表达式是可以匹配文本片段的模式. 1.1 通配符 正则表达式能够匹配对于一个的字符串,可以使用特殊字符创建这类模式.(图片来自cnblogs) 1.2 特殊字符的转义 由于在正则表达式中,有时需要将特殊字符作为普通字符处理,就需要用‘\’进行转义,例如‘python\\.org’就会匹配‘python.org’,那么为什么要用两个反斜杠呢,原因在于需要进行两层转义,首先是re模块表示正则表达式中需要转义一次,其次是python解释器即python的语法还要求再转义一次.也是…
爬虫的分类 1.通用爬虫:通用爬虫是搜索引擎(Baidu.Google.Yahoo等)“抓取系统”的重要组成部分.主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份. 简单来讲就是尽可能的:把互联网上的所有的网页下载下来,放到本地服务器里形成备分,在对这些网页做相关处理(提取关键字.去掉广告),最后提供一个用户检索接口. 搜索引擎如何抓取互联网上的网站数据? 门户网站主动向搜索引擎公司提供其网站的url 搜索引擎公司与DNS服务商合作,获取网站的url 门户网站主动挂靠在一些知名…