我已经使用过相当多的 BS,但我不确定为什么这不会被刮掉,因为我为 Kodi 制作的其他插件工作得很好。有人可以查看标签之间的代码,也许可以找到我丢失的部分吗?
addon/python 不会抛出任何错误,它只是提供一个空的 GUI 屏幕。如果标题或图像抓取正常,而链接则不然,那么它将显示标题/图像,但单击时链接将不起作用。所以这显然是标题/图像部分。我什至尝试过对图像部分进行哈希处理,以便它只查找链接和标题,但仍然没有任何结果。
链接被抓取:https://store.counterpunch.org/feed/podcast/
def get_soup1(url1):
page = requests.get(url1)
soup1 = BeautifulSoup(page.text, 'html.parser')
print("type: ", type(soup1))
return soup1
get_soup1("https://store.counterpunch.org/feed/podcast/")
def get_playable_podcast1(soup1):
subjects = []
for content in soup1.find_all('item', limit=9):
try:
link = content.find('enclosure')
link = link.get('url')
print("\n\nLink: ", link)
title = content.find('title')
title = title.get_text()
except AttributeError:
continue
item = {
'url': link,
'title': title,
'thumbnail': "https://is2-ssl.mzstatic.com/image/thumb/Podcasts71/v4/71/55/88/71558834-c449-9ac3-e327-cad002e305b4/mza_4409042347411679857.jpg/600x600bb.jpg",
}
subjects.append(item)
return subjects
def compile_playable_podcast1(playable_podcast1):
items = []
for podcast in playable_podcast1:
items.append({
'label': podcast['title'],
'thumbnail': podcast['thumbnail'],
'path': podcast['url'],
'is_playable': True,
})
return items
最佳答案
您需要一个用户代理
def get_soup1(url1):
page = requests.get(url1, headers = {'User-Agent':'Mozilla/5.0'})
soup1 = BeautifulSoup(page.text, 'html.parser')
print("type: ", type(soup1))
return soup1
关于python - 不确定为什么 beautifulsoup 代码不会抓取网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57836857/