我是 python 新手,正在学习基础知识。
我的查询: 我有多个页面作为来自日志文件的请求进行访问,如下所示,
"GET /img/home/search-user-ico.jpg HTTP/1.1"
"GET /SpellCheck/am.tlx HTTP/1.1"
"GET /img/plan-comp-nav.jpg HTTP/1.1"
"GET /ie6.css HTTP/1.1"
"GET /img/portlet/portlet-content-bg.jpg HTTP/1.1"
"GET /SpellCheck/am100k2.clx HTTP/1.1"
"GET /SpellCheck/am.tlx HTTP/1.1"
我的问题是我只想要页面中的文件部分,
例如,
让我们将 "GET/img/home/search-user-ico.jpg HTTP/1.1","GET/ie6.css HTTP/1.1"
视为一个页面,然后从上面我想拆分search-user-ico.jpg HTTP
、ie6.css HTTP
。
所以请专家帮我编写上面的Python脚本来分割。
最佳答案
假设文件名中没有空格,并且您不希望末尾有“HTTP”。
您可以按空格分割该行。
parts = line.split(" ")
然后使用os
模块从路径中获取文件名。
filename = os.path.basename(parts[1])
例如。
>>> line = "GET /img/home/search-user-ico.jpg HTTP/1.1"
>>> parts = line.split(" ")
>>> parts[1]
'/img/home/search-user-ico.jpg'
>>> os.path.basename(parts[1])
'search-user-ico.jpg'
关于用于 URL 分割的 Python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5700552/