【发布时间】:2016-11-05 22:47:04
【问题描述】:
我正在从 discogs.com 抓取艺术家。我无法获取页面上显示的艺术家姓名。例如。当我运行我的代码时,艺术家 Andrés 显示为 Andr\xe9s。
谁能解释我做错了什么?
from bs4 import BeautifulSoup
import requests
import urllib2
from itertools import chain
import codecs
headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0' }
all_artists = []
result_pages = 1 #446
def load_artists():
for page in xrange(1, result_pages+1):
url = url = 'https://www.discogs.com/search/?sort=have%2Cdesc&style_exact=House&genre_exact=Electronic&decade=2010&page=' + str(page)
r = requests.get(url, headers = headers)
soup = BeautifulSoup(r.content.decode('utf-8'), 'html.parser')
[all_artists.append(tag["title"]) for tag in soup.select('div#search_results h5 span')]
load_artists()
all_artists
【问题讨论】:
标签: python html parsing unicode beautifulsoup