Skip to main content
 首页 » 编程设计

python之使用 BeautifulSoup 和 url 重定向错误进行 Web 抓取

2025年05月04日31txw1958

我有一个问题和一个问题。此网址 - www.listindiario.com - 有一个重定向,我无法使用 BeautifulSoup 网络抓取来抓取它。它有一个到根目录的重定向,我不知道如何在主页上进行网络抓取,因为它总是重定向并且 urllib2 失败。

我想访问主页而不是初始页面。有什么建议吗?

我知道代码没有优化,但我只想知道如何跳过该重定向。

key = 'la' 
 
htmlfile_test = urllib2.Request('http://www.listindiario.com', headers=hdr) 
 
try: 
    htmlfile = urllib2.urlopen(htmlfile_test) 
    soup = bs4(htmlfile) 
 
    print soup 
 
except URLError as e: 
    if hasattr(e, 'reason'): 
        print 'Dificultad para encontrar respuesta del server.' 
 
    if responses.has_key(e.code): 
        print 'Razon: ', responses[e.code] 
    elif hasattr(e, 'code'): 
        print 'El servidor no puede completar la respuesta.' 
        print 'Codigo de error : ', e.code 
 
    else: 
        print 'URL: ', htmlfile.geturl() 
 
        for resultado in soup.find_all('a', href=True, text=re.compile(key)): 
            print "Encontrado ! <>", resultado['href'] 

请您参考如下方法:

我建议使用 requests 模块而不是 urllib2。然后您可以使用:

import requests 
r = requests.get('http://www.listindiario.com', allow_redirects=False) 
soup = bs4(r.text)