div中的Python Beautiful Soup img标签解析了错误的链接,显示为

时间:2019-01-29 14:59:21

标签: python web-scraping beautifulsoup

我有此代码:

import urllib
import urllib.request
from bs4 import BeautifulSoup
from urllib.request import Request, urlopen
import re

theurl= 'http://es.ninemanga.com/chapter/Dragon%20Ball%20Multiverse/279006.html'

req = Request(theurl  + '.html', headers={'User-Agent': 'Mozilla/5.0'})
thepage = urlopen(req).read()
soup = BeautifulSoup(thepage, "html.parser")


for divs in soup.findAll('div', {"class": "pic_box"}):

    temp = divs.find('img', {"id" : "manga_pic_1"})
    temp1 = temp.get('src')
    print(temp1 + "\n")

我想获取所有带有div的{​​{1}}标签,并在其中包含所有class pic_box标签及其img

我已正确完成src的操作 然后soup.findAll('div', {"class": "pic_box"}),但我却以某种方式得到:

temp.get('src')

代替:

http://a8.ninemanga.com/es_manga/43/555/279006/4c58c372ca4561627e5a01f6c841290e.jpg

他们是否以某种方式阻止了我的请求,或者我在这里做错了什么?

repl to test it

referenced link in theurl variable from which I want to extract 'src'

2 个答案:

答案 0 :(得分:1)

看起来他们可以检测到抓取请求并将其阻止。即使使用假代理也不起作用(我尝试过)。尝试使用Selenium之类的工具,它可以自动执行浏览器活动,并通过浏览器本身下载。

答案 1 :(得分:0)

图像具有唯一的类属性-'manga_pic'get image with manga_pic class