просто пытались разобрать Reddit душ мысль для представлений и столкнулись с проблемой:красивый суп и синтаксический Reddit
path = 'https://www.reddit.com/r/Showerthoughts/'
with requests.Session() as s:
r = s.get(path)
soup = BeautifulSoup(r.content, "lxml")
# print(soup.prettify())
threads = soup.find_all('p')
for thread in threads:
soup = thread
text = soup('a')
try:
print(text[0])
except:
pass
в этом коде я пытаюсь просто получить название каждого представления, которое прилагается в теге < p>, а затем теге < a> с классом «title can-blank». но над кодом возвращается все элементы с тегом, которого много, и даже думал, что названия там, я должен был бы пройти еще два взаимодействия soup.findAll()
, и я уверен, что существует менее ручной способ поиска через суп печать всех названий
из моих знаний я пытался сделать
titles = soup.findAll("a", {"class":"title may-blank}) for title in titles: print(title.string)
, но это не работало какие-нибудь мысли? PS Я знаю, что это можно сделать с помощью reddit API и более эффективно, но я хочу улучшить свои навыки разбора, потому что они не до нуля. Спасибо за помощь
Вы можете получить содержимое своего субредакта в формате JSON, используя 'http: // www.reddit.com/r/Showerthoughts/.json' – PaulMcG