我正在尝试使用 html 解析器 http://easyhtmlparser.sourceforge.net/从页面中获取所有链接和图像
fd = open('file.html', 'r')
data = fd.read()
fd.close()
html = Html()
dom = html.feed(data)
for ind in dom.sail():
if ind.name == 'a':
print ind.attr['ref']
我正在尝试使用 html 解析器 http://easyhtmlparser.sourceforge.net/从页面中获取所有链接和图像
fd = open('file.html', 'r')
data = fd.read()
fd.close()
html = Html()
dom = html.feed(data)
for ind in dom.sail():
if ind.name == 'a':
print ind.attr['ref']
好吧,我并不是特别想阅读 easyhtmlparser 的文档,但如果你愿意使用Beautiful Soup:
from bs4 import BeautifulSoup
fd = open('file.html', 'r')
data = fd.read()
fd.close()
soup = BeautifulSoup(data)
for link in soup.find_all('a'):
print(link.get('href')) #or do whatever with it
应该可以,但我没有测试过。祝你好运!
编辑:现在我有了。有用。
编辑 2:要查找图像,请搜索所有图像标签等,找到 src 链接。我相信您可以在 Beautiful Soup 或 easyhtmlparser 文档中找到方法。
要下载并放入文件夹,
import urllib
urllib.urlretrieve(IMAGE_URL, path_to_folder/imagename)
或者你可以从 urllib 中读取,因为最后一切都只是一个字符串,并且读取比检索更简单。
我会这样做。
from ehp import *
with open('file.html', 'r') as fd:
data = fd.read()
html = Html()
dom = html.feed(data)
for ind in dom.sail():
if ind.name == 'a':
print ind.attr['href']
elif ind.name == 'img':
print ind.attr['src']