我使用BS4进行网页抓取,并使用以下html
:
<a style="display:inline; position:relative;" href="
/aems/file/filegetrevision.do?fileEntityId=8120070&cs=LU31NT9us5P9Pvkb1BrtdwaCrEraskiCJcY6E2ucP5s.xyz">
Screenshot.docx </a>
现在如何使用BS4获取href
的值,无法获得。你能帮忙吗?
谢谢,
答案 0 :(得分:3)
这不是诀窍吗?
for a in soup.find_all('a', href=True):
print a['href']
如果您需要,可以在find_all
中使用attrs:
soup.find_all("div", {"style": "display:inline; position:relative;"})
去除空格并使链接绝对:
import urlparse
urlparse.urljoin(url, a['href'].strip())
答案 1 :(得分:2)
for a in soup.find_all('a', {"style": "display:inline; position:relative;"}, href=True):
href = a['href'].strip()
href = "http://example.com" + href
print(href)
'http://example.com/aems/file/filegetrevision.do?fileEntityId=8120070&cs=LU31NT9us5P9Pvkb1BrtdwaCrEraskiCJcY6E2ucP5s.xyz'
内置函数strip()
在这里非常有用。 :)