我试图解析网站上的图片地址(https://amitego.ru/)
结果是这样的:
import requests
from bs4 import BeautifulSoup
HEADERS = {
'user-agent': '*Скрыто*',
'accept': '*/*'
}
def get_html(url):
r = requests.get(url, headers=HEADERS)
return r.text
def get_images(html):
soup = BeautifulSoup(html, 'lxml')
a = soup.find('div', class_='pp-posts-container').find_all('div', class_='pp-post-thumbnail')
images = []
for i in images:
img = a.find('a').get('src')
images.append(a)
return images
def main():
url = 'https://amitego.ru/'
all_images = get_images(get_html(url))
for i in all_images:
print(i)
if __name__ == '__main__':
main()
这些行中有几个错误:
在一个循环中,
for
您正在遍历一个空列表。也就是说,根本不执行循环,函数返回一个空列表images
。但是,即使您纠正错误并迭代
a
,也不会产生任何结果,因为i
您根本不使用该变量,而且您获得的链接不是指向图像,而是指向文章。工作示例:
标准输出:
如果相反
添加
然后代码将加载图像