在网络搜寻器中,我想写超链接内部文本以及url。如何实现?
ex-
<a href="www.example.com">Example</a>
对于此链接,我想以已爬网文件的形式写入
“示例www.example.com”
我在pyhton中尝试过LinkFinder,在这里我可以获取链接,但无法获取内部文本。
from urllib.request import urlopen
from link_finder import LinkFinder
def gather_links(page_url):
html_string = ''
try:
response = urlopen(page_url)
if 'text/html' in response.getheader('Content-Type'):
html_bytes = response.read()
html_string = html_bytes.decode("utf-8")
finder = LinkFinder('',page_url)
finder.feed(html_string)
except Exception as e:
print(str(e))
return finder.page_links()
答案 0 :(得分:0)
由于您不仅要获取链接,还希望获取链接内的文本,因此需要使用HTML解析器库。这两个应该为您工作之一:
link = '<a href="www.example.com">Text</a>'
import lxml.html
target = lxml.html.fromstring(link)
或
from bs4 import BeautifulSoup as bs
soup = bs(link,'lxml')
target = soup.find('a')
然后使用任一库:
my_str = target.text+' '+target.get('href')
my_str
输出:
“文本www.example.com”