parsing python проблема с выводом когда в функции
когда код не в функции, то выводит все названия, а когда в функции то только одно, которое первое и заканчивает работу
import requests
from bs4 import BeautifulSoup as BS
def get_MusorGames(page=1):
while True:
r = requests.get(f"https://stopgame.ru/review/new/musor/p"+str(page))
html = BS(r.content, 'html.parser')
items = html.select(".items > .article-summary")
if len(items):
for names in items:
title = names.select('.caption > a')
with open("info.txt", "a", encoding='utf-8') as file:
file.write(title[0].text + "\n")
return title[0].text
page += 1
else:
break
def main():
print(get_MusorGames())
if __name__ == '__main__':
main()
Ответы (1 шт):
Автор решения: Сергей Шашко
→ Ссылка
import requests
from bs4 import BeautifulSoup as BS
def get_MusorGames(page=1):
titles = []
while True:
r = requests.get(f"https://stopgame.ru/review/new/musor/p" + str(page))
html = BS(r.content, 'html.parser')
items = html.select(".items > .article-summary")
page += 1
if len(items):
for names in items:
title = names.select('.caption > a')
titles.append(title[0].text.replace(': Обзор', ''))
else:
return titles
def main():
print(get_MusorGames())
if __name__ == '__main__':
main()