Я пытаюсь сканировать веб-сайты, и на всех них есть таблицы. Однако первый URL-адрес имеет идентификатор таблицы с именем .table-translations
, а другой не имеет идентификатора, поэтому он не сканируется.
Но если я его не включу, он не будет сканировать .
Как использовать BeautifulSoup для сканирования данных с идентификатором таблицы и без него?
ниже мой код
import requests
from bs4 import BeautifulSoup
urls = ['http://www.mongols.eu/mongolian-language/mongolian-tale-six-silver-stars', 'http://www.mongols.eu/mongolian-language/mongolian-tale-yanzin-jaal']
for url in urls:
print(url)
out_fileName = url.rsplit('/', 1)[-1]
out_mn = out_fileName + "_mn.txt"
out_en = out_fileName + "_en.txt"
soup = BeautifulSoup(requests.get(url).content, 'html.parser')
all_data = []
for row in soup.select('.table-translations tr')[1:]:
mongolian, english = map(lambda t: t.get_text(strip=True), row.select('td')[1:])
all_data.append((mongolian, english))
for row in all_data:
with open(out_mn, "a") as text_file:
text_file.write(row[0] + "\n")
with open(out_en, "a") as text_file:
text_file.write(row[1] + "\n")