在Python中从字节字符串中删除前20个字节的最快方法是什么?

时间:2016-04-18 03:40:16

标签: python tcp pack unpack

我正在使用TCP协议将数据包从发送方传递到接收方。我需要能够从内容中分割标题,填充我的“数据包”。

我的标题包装如此

        **String query = "#";
        System.out.println("[Current query is \"" + query + "\"]");
        // Query settings
        twitterQuery = new Query(query);
        // Result per page
        twitterQuery.setCount(resultPerPage);
        // Language code
        twitterQuery.setLang(lang);
    QueryResult result = twitter.search(twitterQuery);
    List<Status> tweets = result.getTweets();**

然后我的数据包构造如下

tcp_header = pack('!HHLLBBH', tcp_source, tcp_dest, tcp_seq, tcp_ack_seq, tcp_offset_res, tcp_flags,
                          tcp_window) + pack('H', tcp_check) + pack('!H', tcp_urg_ptr)

我像这样解压缩

packet = tcp_header + user_data

但它只有在我单独发送标题时才有效。在解压缩之前,如何从标题中拆分内容?

由于

1 个答案:

答案 0 :(得分:2)

您正在寻找的功能struct.unpack_from

struct.unpack_from('!HHLLBBHHH', sent_packet)