设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 6384|回复: 5
打印 上一主题 下一主题

请教下分析头部信息的代码

[复制链接]

10

主题

0

好友

88

积分

注册会员

Rank: 2

跳转到指定楼层
楼主
发表于 2018-11-3 10:47:44 |只看该作者 |倒序浏览
老师早上好!

我试着写代码分析网页的头部信息,把它转换成为一个字典,代码如下:

header=input('输入头部信息:\n')

def header_format(header):

    lst=header.split('\n')
    #用换行符来分割header数据,转换成一个list
    dic={}
    for i in lst:   #遍历这个list
        short_lst=i.split(':')  #用冒号来分割每个对象
        dic[short_lst[0]]=''.join(short_lst[1:])
        #将列表中每个对象分割成一个list,添加入字典
    print(dic)
header_format(header)

但是在执行时候,贴上header,只能显示第一条内容的字典,

================ RESTART: C:\Python\2018-11-2headerformat.py ================
输入头部信息:
Accept-Ranges:bytes
Cache-Control:max-age=240
Connection:keep-alive
Content-Length:17
Content-Type:application/x-javascript
Date:Sat, 03 Nov 2018 02:44:22 GMT
Expires:Sat, 03 Nov 2018 02:48:22 GMT
Last-Modified:Mon, 20 Aug 2018 08:02:18 GMT
P3P:CP=CAO PSA OUR
Server:nginx
X-Via:1.1 PSjstzdx2zv208:12 (Cdn Cache Server V2.0)
{'Accept-Ranges': 'bytes'}
>>>

请教下是什么原因,应该如何解决,谢谢!



回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2018-11-3 12:34:18 |只看该作者
你把每一行的结果都print出来,看是哪一步没有符合你的设想预期
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

10

主题

0

好友

88

积分

注册会员

Rank: 2

板凳
发表于 2018-11-4 00:13:46 |只看该作者
crossin先生 发表于 2018-11-3 12:34
你把每一行的结果都print出来,看是哪一步没有符合你的设想预期

感谢crossin老师
回复

使用道具 举报

10

主题

0

好友

88

积分

注册会员

Rank: 2

地板
发表于 2018-11-4 19:35:35 |只看该作者
crossin老师
我把header作为变量 写入代码中 是可以成功转换为字典的
但上面代码执行后 粘贴这多行的header 却只能返回第一行内容的字典
我猜测是 这多行的header每行末带换行符 在交互模式下 认为第一行就按了回车确认
请问有没有解决的方法呢 先谢谢了
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

5#
发表于 2018-11-5 11:12:03 |只看该作者
szwfn 发表于 2018-11-4 19:35
crossin老师
我把header作为变量 写入代码中 是可以成功转换为字典的
但上面代码执行后 粘贴这多行的header ...

不要通过交互方式来输入多行数据

或者修改你的输入代码,循环获取,直到获取一个空行为止
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

10

主题

0

好友

88

积分

注册会员

Rank: 2

6#
发表于 2018-11-8 22:56:37 |只看该作者
crossin先生 发表于 2018-11-5 11:12
不要通过交互方式来输入多行数据

或者修改你的输入代码,循环获取,直到获取一个空行为止 ...

好的 谢谢老师的建议
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-22 05:24 , Processed in 0.029359 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部