python:判断一个字符串是否是URL

chosen86 2014-09-03 03:42:36
07/Aug/2014:15:36:32 10.6.99.74 cyjtest 124.160.136.240
07/Aug/2014:15:36:32 10.6.99.74 cyjtest 124.160.136.250
07/Aug/2014:15:36:59 10.6.99.74 cyjtest www.baidu.com
07/Aug/2014:15:37:00 10.6.99.74 cyjtest sports.sina.com.cn
包含很多行上述行的文本text1.txt:

fr = open (r'text1.txt','r')
fw = open(r'text2.txt','w+')
for text in fr:
li = text.split(' ')
tf = re.match(/^(http://){0,1}[A-Za-z0-9][A-Za-z0-9\-\.]+[A-Za-z0-9]\.[A-Za-z]{2,}[\43-\176]*$/,li[3])
if tf:
fw.write(text)
fr.close()
fw.close()

想判断li[3]是不是URL,如果是就写入新文件,不是(即IP)就不写入,请问这样写对吗(不知道match返回什么)?小白求问,谢谢
...全文
1674 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
chosen86 2014-09-03
  • 打赏
  • 举报
回复
引用 1 楼 xmnathan 的回复:

import socket
fr = open (r'text1.txt','r')
fw = open(r'text2.txt','w+')
for text in fr:
    li = text.split(' ')
    if li[3] != socket.gethostbyname( li[3] ):
       fw.write(text)
fr.close()
fw.close()
明白,谢谢!
  • 打赏
  • 举报
回复

import socket
fr = open (r'text1.txt','r')
fw = open(r'text2.txt','w+')
for text in fr:
    li = text.split(' ')
    if li[3] != socket.gethostbyname( li[3] ):
       fw.write(text)
fr.close()
fw.close()

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧