国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

Python爬蟲(chóng)預(yù)備知識(shí)

2019-11-14 17:28:02
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1.http編程知識(shí)

  • http中client 和server的工作模式

  client和server建立可靠的tcp鏈接(在HTTP1.1中這個(gè)鏈接是長(zhǎng)時(shí)間的,超時(shí)斷開(kāi)策略)

  client通過(guò)socket與server通信,發(fā)送request并接受response

  http協(xié)議是無(wú)狀態(tài)的,是指每一條的請(qǐng)求是相互獨(dú)立的,client和server都不會(huì)記錄客戶(hù)的行為。

  client通過(guò)在HTTP請(qǐng)求中添加headers告訴server 他請(qǐng)求的內(nèi)容,可以接受的格式

 

  • 常用的請(qǐng)求方式有g(shù)et和post

  Get:client請(qǐng)求一個(gè)文件

  Post:client發(fā)送數(shù)據(jù)讓server處理

 

如上圖,輸入http://www.baidu.com/

得到的request headers是:

Get :請(qǐng)求方式  / 表示根目錄  HTTP/1.1表示采用的協(xié)議版本

HOST:請(qǐng)求的主機(jī)

Connection:保持長(zhǎng)連接,

Cache-control:緩存相關(guān)

User-agent:告訴server我client的身份,包括瀏覽器版本等

Accept:支持的內(nèi)容類(lèi)型,先后次序表示瀏覽器依次加載的先后順序

Accept-encoding:允許服務(wù)器以一下幾種的壓縮的格式對(duì)傳輸內(nèi)容進(jìn)行壓縮

Accept-language:展示返回信息所采用的語(yǔ)言

Accept-charset:瀏覽器支持的字符編碼集

Cookie:緩存相關(guān)

參考博客:

http://technique-digest.VEvb.com/blog/1174581

http://www.survivalescaperooms.com/ShaYeBlog/archive/2012/09/11/2680485.html

http://blog.csdn.net/bingjing12345/article/details/9819731

2. urllib2 相關(guān)內(nèi)容

 

class urllib2.Request(url[, data][, headers][, origin_req_host][, unverifiable])

URL:應(yīng)該是一個(gè)字符串

Data:是一個(gè)經(jīng)過(guò)urllib.urlencode()編碼的編碼后字符串

Headers:用來(lái)哄騙user_agent,把來(lái)自script訪(fǎng)問(wèn)偽裝成瀏覽器的訪(fǎng)問(wèn)。

示例代碼:

import urllib 

import urllib2 

url = 'http://www.someserver.com/cgi-bin/register.cgi'

user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' 

values = {'name' : 'WHY', 

          'location' : 'SDU', 

          'language' : 'Python' } 

headers = { 'User-Agent' : user_agent } 

data = urllib.urlencode(values) 

req = urllib2.Request(url, data, headers) 

response = urllib2.urlopen(req) 

the_page = response.read()

 參考博客:http://blog.csdn.net/pleasecallmewhy/article/details/8923067

3. 把如下代碼保存成html格式,用相應(yīng)的瀏覽器打開(kāi),得到瀏覽器的版本信息

<html><head></head><body><script language="javascript">Javascript:alert(navigator.userAgent); </script></body></html>

 搜狗瀏覽器的user_agent

 

百度瀏覽器的user_agent

 

Google chorme的user_agent


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 博湖县| 凌云县| 姚安县| 陕西省| 明溪县| 西林县| 兴化市| 张北县| 建瓯市| 股票| 荆门市| 湘西| 黄山市| 桂阳县| 察雅县| 云和县| 星子县| 桓台县| 芦山县| 鄂托克旗| 枞阳县| 吴江市| 烟台市| 延长县| 贵定县| 天等县| 东莞市| 汤原县| 精河县| 漳平市| 丹巴县| 东乌珠穆沁旗| 苗栗市| 东港市| 郧西县| 泾阳县| 怀化市| 榆中县| 石景山区| 股票| 南溪县|