當前位置:首頁 » 編程語言 » python發送數據包

python發送數據包

發布時間: 2022-04-12 06:45:24

『壹』 用python怎麼發送tcp協議的16進制數據包

一般字元串可以直接發,不是可讀的也可以用"\x33\x22"這種發。
如果是一列數之類的,可以用struct的pack打包成字元串發送。

『貳』 python怎樣模擬發送smtp的數據包

一般最好有個smtp伺服器,比如說你在163注冊個郵箱,這樣可以用smtplib通過這個郵箱來發送。以下是示例: #-*- coding:utf8 -*- import smtplib import email import mimetypes from email.MIMEMultipart import MIMEMultipart from email.mime.....

『叄』 python發送數據包獲取返回數據(其他的語言能實現也可以)

使用網路翻譯的一個例子,可以翻譯你輸入的文字,發送需要的內容,獲取返回的數據

import urllib.request
import urllib.parse
import json
import time

while True:
url = 'http://fanyi..com/v2transapi'

words = input("輸入你想翻譯的內容:")

data = {}
data['from'] = 'auto'
data['to'] = 'auto'
data['query'] = words
data['transtype'] = 'translang'
data['simple_means_flag'] = '3'

data = urllib.parse.urlencode(data).encode('utf-8')

headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36'
}

req = urllib.request.Request(url, data, headers)
req.add_header('Referer', 'http://fanyi..com/')
response = urllib.request.urlopen(req)
html = response.read().decode('utf-8')
js = json.loads(html)
# print(html)
# print(js)
print(js['trans_result']['data'][0]['dst'])
time.sleep(1)

『肆』 win下的python環境能不能發二層數據包arp包

原因:文件的命名與Python的function的命名沖突

修改名稱後,發現還是無法運行,檢查目錄下面是否有

這樣子的一個文件,刪除即可。

據我的理解,應該是我們自己命名重寫了Python的socket函數。

附上我的小代碼

import socket

mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
mysock.connect((『data.pr4e.org『, 80))
mysock.send(『GET hthort.txt HTTP/1.0 『)


while True:
data = mysock.recv(512)
if ( len(data) < 1 ) :
break
print data;

mysock.close()

『伍』 求完整的用python語言實現socket編程,完成數據的發送,接收轉發的程序!!急!!!謝謝!!

http://hi..com/bqlymjtdjsbcjtd/item/c7a718cdf44f715abcef6900 應該有點參考價值

『陸』 怎樣用 python(2.5或其它版本均可)實現圖形界面,並向指定IP地址的指定埠發送數據包回答請註明版本

可以使用pygtk來實現圖形界面,可以在網上找一些教程。


向指定埠發送數據包,使用socket內置庫。下面有一個簡單的demo以供參考:

server端:

importsocket
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.bind(("",8081))
whileTrue:
#Receiveupto1,024bytesinadatagram
data,addr=s.recvfrom(1024)
print"Received:",data,"from",addr

client端:

importsocket
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
port=8081
host="localhost"
whileTrue:
msg=raw_input()
s.sendto(msg,(host,port))


望採納,謝謝支持!

『柒』 python post數據包

利用qoute和unqoute方法,對數據進行URL編碼和解碼,能轉義和還原這種特殊字元

『捌』 怎麼用python和原始套接字發送一tcp數據包

TCP的首部格式:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Port | Destination Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Acknowledgment Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data | |U|A|P|R|S|F| |
| Offset| Reserved |R|C|S|S|Y|I| Window |
| | |G|K|H|T|N|N| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | Urgent Pointer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| data |
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-

—Source Port是源埠,16位。
—Destination Port是目的埠,16位。
—Sequence Number是發送數據包中的第一個位元組的序列號,32位。
—Acknowledgment Number是確認序列號,32位。
—Data Offset是數據偏移,4位,該欄位的值是TCP首部(包括選項)長度乘以4。
—標志位: 6位,URG表示Urgent Pointer欄位有意義:
ACK表示Acknowledgment Number欄位有意義
PSH表示Push功能,RST表示復位TCP連接
SYN表示SYN報文(在建立TCP連接的時候使用)
FIN表示沒有數據需要發送了(在關閉TCP連接的時候使用)
Window表示接收緩沖區的空閑空間,16位,用來告訴TCP連接對端自己能夠接收的最大數據長度。
—Checksum是校驗和,16位。
—Urgent Pointers是緊急指針,16位,只有URG標志位被設置時該欄位才有意義,表示緊急數據相對序列號(Sequence Number欄位的值)的偏移。
更多TCP協議的詳細信息可以在網上輕易找到,在這里不再贅述。
為了建立一個可以自己構造數據的包,我們使用"SOCK_RAW"這種socket格式,使用"IPPROTO_RAW"協議,它會告訴系統我們將提供網路層和傳輸層。

s = socket.socket(socket.AF_INET,socket.SOCK_RAW,)
通過這個簡單的類,我們可以進行IP頭部信息構造
class ip(object):
def __init__(self, source, destination):
self.version = 4

『玖』 python3 socket的send方法如何發送數據

用如下代碼:

name='bruce'
s.send(b'hihi'+name.encode())

要把name變成二進制才能拼接

望採納

『拾』 怎麼用python和原始套接字發送一tcp數據包

原始套接字就是這樣的呀

熱點內容
android備忘錄源碼 發布:2025-01-20 01:06:32 瀏覽:454
怎麼禁用aspx緩存 發布:2025-01-20 01:00:50 瀏覽:687
我的手機如何恢復安卓系統 發布:2025-01-20 00:55:48 瀏覽:366
eclipsejsp編譯 發布:2025-01-20 00:51:02 瀏覽:860
虛擬機連宿主機ftp 發布:2025-01-20 00:43:04 瀏覽:356
最小生成樹的prim演算法 發布:2025-01-20 00:39:40 瀏覽:325
淘寶助理無法上傳 發布:2025-01-20 00:34:33 瀏覽:883
如何做一個代理伺服器 發布:2025-01-20 00:18:39 瀏覽:803
android背單詞源碼 發布:2025-01-19 23:57:21 瀏覽:727
領動配置怎麼樣 發布:2025-01-19 23:56:35 瀏覽:83