<p>这里的基本问题似乎是当第一次加载页面时实际的<code><img ...></code>元素不存在。在我看来,最好的解决方案是利用SeleniumWebDriver,您已经可以使用它来获取图像。Selenium将允许页面正确呈现(使用JavaScript和all),然后定位您关心的任何元素。你知道吗</p>
<p>例如:</p>
<pre><code>import webbrowser, time, sys, requests, os, bs4 # Not all libraries are used in this code snippet
from selenium import webdriver
# For pretty debugging output
import pprint
browser = webdriver.Firefox()
browser.get("https://imgur.com/t/lenovo/mLwnorj")
# Give the page up to 10 seconds of a grace period to finish rendering
# before complaining about images not being found.
browser.implicitly_wait(10)
# Find elements via Selenium's search
selenium_image_elements = browser.find_elements_by_css_selector('img.post-image-placeholder')
pprint.pprint(selenium_image_elements)
# Use page source to attempt to find them with BeautifulSoup 4
soup = bs4.BeautifulSoup(browser.page_source, features="html.parser")
soup_image_elements = soup.findAll('img', {'class': 'post-image-placeholder'})
pprint.pprint(soup_image_elements)
</code></pre>
<p><strike>我不能说我已经测试了这段代码,</strike>但是一般的概念应该有用。你知道吗</p>
<hr/>
<p>更新:</p>
<p>我继续进行测试,修复了代码中的一些错误,然后得到了我希望看到的结果:</p>
<p><a href="https://i.stack.imgur.com/JrI1q.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/JrI1q.png" alt="Output from running code"/></a></p>