Python 抓取器无法抓取 img src

Python Scraper Unable to scrape img src

我无法从网站 www.kissmanga.com 抓取图片。我正在使用 Python3 以及 Requests 和 Beautifulsoup 库。抓取的图像标签给出空白 "src".

源代码:

from bs4 import BeautifulSoup
import requests

scraper = cfscrape.create_scraper()

url = "http://kissmanga.com/Manga/Bleach/Bleach-634--Friend-004?id=235206"

response = requests.get(url)

soup2 = BeautifulSoup(response.text, 'html.parser')

divImage = soup2.find('div',{"id": "divImage"})

for img in divImage.findAll('img'):
     print(img)

response.close()

我认为图像抓取已被阻止,因为我相信该网站使用了 cloudflare。基于这个假设,我也尝试使用 "cfscrape" 库来抓取内容。

您需要等待 JavaScript 为图像注入 html 代码。

有多种工具可以执行此操作,以下是其中的一些:

我能够让它与 Selenium 一起工作:

from bs4 import BeautifulSoup

from selenium import webdriver
from selenium.common.exceptions import TimeoutException

driver = webdriver.Firefox()
# it takes forever to load the page, therefore we are setting a threshold
driver.set_page_load_timeout(5)

try:
    driver.get("http://kissmanga.com/Manga/Bleach/Bleach-634--Friend-004?id=235206")
except TimeoutException:
    # never ignore exceptions silently in real world code
    pass

soup2 = BeautifulSoup(driver.page_source, 'html.parser')
divImage = soup2.find('div', {"id": "divImage"})

# close the browser 
driver.close()

for img in divImage.findAll('img'):
    print img.get('src')

如果您也想下载这些图片,请参阅How to download image using requests

您尝试过设置 custom user-agent 吗? 这样做通常被认为是不道德的,但抓取漫画也是如此。