Created
January 15, 2019 08:52
-
-
Save caoya171193579/a2db011dabc3807636af44f79c9b5623 to your computer and use it in GitHub Desktop.
进阶
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
爬取网页图片: | |
html 代码里面的 img 的标签里面一般放的都是图片地址。 | |
src="http 打头,图片是.jpg 结尾 ,.gif 是一些小图,头像类的, 我们常抓.jpg " | |
widch="" , height="" 都是图片的大小。 | |
抓取URL 常用模块 urllib urllib2: | |
除了"http:",URL同样可以使用"ftp:","file:"等等来替代。 | |
HTTP是基于请求和应答机制的: | |
客户端提出请求,服务端提供应答。 | |
urllib的四个模块: | |
* | |
urllib.request:用于获取网页的响应内容 | |
* | |
urllib.error:异常处理模块,用于处理异常的模块 | |
* | |
urllib.parse:用于解析url | |
* | |
urllib.robotparse:用于解析robots.txt,主要用于看哪些网站不能进行爬取,不过少用 | |
urllib2: | |
 | |
上面这四行代码将我们访问百度时浏览器收到的代码们全部打印了出来。 | |
urllib2用一个Request对象来映射你提出的HTTP请求。 | |
在它最简单的使用形式中你将用你要请求的地址创建一个Request对象, | |
通过调用urlopen并传入Request对象,将返回一个相关请求response对象, | |
这个应答对象如同一个文件对象,所以你可以在Response中调用.read()。 | |
 | |
和第一段代码的意思相同。 | |
在HTTP请求时,允许你做额外的两件事。 | |
1.发送data表单数据 | |
这个内容相信做过Web端的都不会陌生, | |
有时候你希望发送一些数据到URL(通常URL与CGI[通用网关接口]脚本,或其他WEB应用程序挂接)。 | |
在HTTP中,这个经常使用熟知的POST请求发送。 | |
这个通常在你提交一个HTML表单时由你的浏览器来做。 | |
并不是所有的POSTs都来源于表单,你能够使用POST提交任意的数据到你自己的程序。 | |
一般的HTML表单,data需要编码成标准形式。然后做为data参数传到Request对象。 | |
Request对象(瑞快死特: 请求) | |
编码工作使用urllib的函数而非urllib2。 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment