我正试图从这个网站上搜刮一张图片。https:/www.remax.caonrichmond-hill-real-estate-2407--9201-yonge-st-wp_id268950754-lst. 目前的代码是。
url = 'https://www.remax.ca/on/richmond-hill-real-estate/-2407--9201-yonge-st-wp_id268950754-lst'
soup = BeautifulSoup(urlopen(url), 'html.parser')
imgs = soup.findAll('div', attrs = {'class': 'images is-flex flex-one has-flex-align-center has-flex-content-center'})
当我看到里面的 imgs
我找不到 image active ng-star-inserted ng-lazyloaded
和 srcset
. 结果,我无法下载该图片。
谁能建议如何解决这个问题?
图片是懒加载的,我想问题就出在这里。所以我废掉了加载和管理这些图片的脚本。
script = soup.find('script', {'type': 'application/ld+json'})
script_json = json.loads(script.contents[0])
imgs = script_json['@graph'][1]['photo']['url']
现在 imgs
包含您提供的该住宅链接中的所有11张图片的列表。
你可以使用 urllib 使用这段代码将图片从 url 保存到你的电脑上。
import urllib.request
urllib.request.urlretrieve("https://www.remax.ca/on/richmond-hill-real-estate/-2407--9201-yonge-st-wp_id268950754-lst", "local-filename.jpg")
或者
你可以用这个从google图片中下载多张图片,用这个。多图下载器 - GitHub