我正在尝试从包含网站源代码的文本文件中提取URL。我想获取href内的网站链接,并写了一些我从stackoverflow借来的代码,但无法正常工作。with open(sourcecode.txt) as f: urls = f.readlines()urls = ([s.strip('\n') for s in urls ]) print(url)
2 回答

小唯快跑啊
TA贡献1863条经验 获得超2个赞
使用正则表达式,您可以从文本文件中提取所有网址,而无需逐行循环:
import re
with open('/home/username/Downloads/Stack_Overflow.html') as f:
urls = f.read()
links = re.findall('"((http)s?://.*?)"', urls)
for url in links:
print(url[0])

MMTTMM
TA贡献1869条经验 获得超4个赞
您可以为此使用正则表达式。
import re
with open('sourcecode.txt') as f:
text = f.read()
href_regex = r'href=[\'"]?([^\'" >]+)'
urls = re.findall(href_regex, text)
print(urls)
您可能会收到类似的错误'sourcecode' is not defined;这是因为您传递给的参数open()必须是字符串(请参见上文)
添加回答
举报
0/150
提交
取消