from bs4 import BeautifulSoup, SoupStrainer
import requests
def get_url(url):
page = requests.get(url.format())
data = page.text
soup = BeautifulSoup(data)
for link in soup.find_all('a'):
print(link.get('href'))这就是基本代码,当我请求时,
# get_url("https://www.marie-claire.es/moda")
get_url("http://spanish.xinhuanet.com/")新华社回归

完整的URL,
但是另一个网站

不返回完整的超链接,
我不确定为什么我会有这个问题,以及如何解决它。有没有人遇到过类似的问题?或者知道如何解决这个问题?
发布于 2021-06-02 23:40:02
我怀疑你在这里寻找urljoin:
from bs4 import BeautifulSoup, SoupStrainer
import requests
from urllib.parse import urljoin
def get_url(url):
page = requests.get(url.format())
data = page.text
soup = BeautifulSoup(data)
for link in soup.find_all('a'):
print(urljoin(url, link.get('href')))你也可以考虑
for link in set(soup.find_all('a')):以避免结果中出现重复项。
https://stackoverflow.com/questions/67807428
复制相似问题