第二行面后就随着baidu.com所对应的服务器的ip址地。
以后,浏览器会向服务器发送一个GET请求,让我们用HTTPanalyzer截拦一个。
Host: www.baidu.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding: gzip,deflate
Accept-Language: zh-CN,zh;q=0.8
Accept-Charset: GBK,utf-8;q=0.7,*;q=0.3
Cookie: ***********************************
可以从字面意思失掉,我们给服务器发送个各种本机的信息,其中括包浏览器内核,可接受的页网格式,缩压格式,语言,语言编码,以及Cookies。
Cookies 是身份证验的要重组件。
而当我们填写页网下面的的表格时,浏览器会向服务器发送POST数据包,较之GET包,除了Request Header , 还有BODY分部,来放存表单的内容,其内容可能被密加或者缩压。
当初,我们来用Python,建创GET包和POST包。
至于有什么处用,大家慢慢领会。
Python 中包含了量大的库,作为一门新兴的语言,Python 对HTTP有充足大强的持支。
当初,我们引入新的库 httplib 以及 urllib
这两个库根据称名,我们可以道知他们是对于HTTP以及URL的操纵。
让我们直入主题,HOW to Build a post or get
首先我们先要与服务器立建连接。(我们以某微博作为例子实现下文的各种功能)
from random import Random
def random_str(randomlength):
str = ''
chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'
length = len(chars) - 1
random = Random()
for i in range(randomlength):
str+=chars[random.randint(0, length)]
return str