摘要:我們以訪問(wèn)百度主頁(yè)為案例,使用發(fā)送請(qǐng)求?;谶M(jìn)行編程在于請(qǐng)求參數(shù)的可控性更好,但是難度相應(yīng)就更大了。以上發(fā)送的數(shù)據(jù)是直接從抓包器里面復(fù)制的。
我們以訪問(wèn)百度主頁(yè)為案例,使用socket發(fā)送http請(qǐng)求。
import socket s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.connect(("www.baidu.com",80)) s.send("""GET https://www.baidu.com/ HTTP/1.1 Host: www.baidu.com Connection: keep-alive Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36 Accept-Language: zh-CN,zh;q=0.8 """) buf=s.recv(1024) while len(buf): print buf buf = s.recv(1024)
基于socket進(jìn)行http編程在于請(qǐng)求參數(shù)的可控性更好,但是難度相應(yīng)就更大了。以上發(fā)送的數(shù)據(jù)是直接從fiddler抓包器里面復(fù)制的。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/37947.html
摘要:對(duì)于網(wǎng)絡(luò)編程來(lái)說(shuō),免不了要用到模塊。表示另一端的地址。以上主要是針對(duì)流數(shù)據(jù)的編程。對(duì)于協(xié)議的數(shù)據(jù),處理略有不同。通過(guò)傳入對(duì)象調(diào)用來(lái)監(jiān)聽(tīng)對(duì)象的文件描述符,一旦發(fā)現(xiàn)對(duì)象就緒,就通知應(yīng)用程序進(jìn)行相應(yīng)的讀寫(xiě)操作。 對(duì)于python網(wǎng)絡(luò)編程來(lái)說(shuō),免不了要用到socket模塊。下面分享一下個(gè)人對(duì)python socket的一些理解。 socket編程步驟 服務(wù)端創(chuàng)建一個(gè)socket,綁定地址和端...
摘要:運(yùn)行得十分好,總是使用并且返回消息。這個(gè)問(wèn)題的提出意味著通過(guò)實(shí)施你自己的函數(shù)來(lái)使用原套,從回應(yīng)到讀取。額外的緩沖是因?yàn)檎?qǐng)求使用的是原始套接字的生成文件方法從中讀取數(shù)據(jù)。手動(dòng)進(jìn)行所以如何從使用通過(guò)自己發(fā)出請(qǐng)求和處理響應(yīng)。 Kubernetes有一個(gè)之前系統(tǒng)用來(lái)做很多工作的REST-ish HTTP API。這個(gè)API是開(kāi)放的,而且文檔十分齊全,很容易整合,可以從代碼方面管理集群。然而這個(gè)...
摘要:結(jié)果總是重定向,狀態(tài)碼找了好久都不知道什么原因,而且直接在瀏覽器網(wǎng)址欄輸入網(wǎng)址,用抓包也沒(méi)有抓到狀態(tài)為的包。其實(shí)狀態(tài)碼的時(shí)候應(yīng)答部分的可以觀察到,但是一個(gè)太不顯眼了所以我沒(méi)有注意到,導(dǎo)致卡了很久接下來(lái)只要知道如何發(fā)送請(qǐng)求就好了。 這是個(gè)在寫(xiě)計(jì)算機(jī)網(wǎng)絡(luò)課設(shè)的時(shí)候碰到的問(wèn)題,卡了我一天,所以總結(jié)一下。 其實(shí)在之前就有用requests寫(xiě)過(guò)python爬蟲(chóng),但是計(jì)算機(jī)網(wǎng)絡(luò)要求更底層的實(shí)現(xiàn),剛...
摘要:當(dāng)一個(gè)客戶(hù)端連接時(shí),它將返回一個(gè)新的對(duì)象,對(duì)象中有表示當(dāng)前連接的和一個(gè)由主機(jī)端口號(hào)組成的連接的元組,更多關(guān)于元組值的內(nèi)容可以查看地址族一節(jié)中的詳情這里必須要明白我們通過(guò)調(diào)用方法擁有了一個(gè)新的對(duì)象。 博客原文: https://keelii.com/2018/09/24/socket-programming-in-python/ 說(shuō)明 本書(shū)翻譯自 realpython 網(wǎng)站上的文章教程 ...
閱讀 1686·2021-11-19 09:40
閱讀 2939·2021-09-24 10:27
閱讀 3228·2021-09-02 15:15
閱讀 1888·2019-08-30 15:54
閱讀 1213·2019-08-30 15:54
閱讀 1378·2019-08-30 13:12
閱讀 642·2019-08-28 18:05
閱讀 2809·2019-08-27 10:53