Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- from bs4 import BeautifulSoup
- import sys
- headers = {
- "accept": "*/*",
- "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) "
- "Chrome/101.0.4951.67 Safari/537.36 "
- }
- languages = {1: 'Arabic',
- 2: 'German',
- 3: 'English',
- 4: 'Spanish',
- 5: 'French',
- 6: 'Hebrew',
- 7: 'Japanese',
- 8: 'Dutch',
- 9: 'Polish',
- 10: 'Portuguese',
- 11: 'Romanian',
- 12: 'Russian',
- 13: 'Turkish'}
- def text(soup):
- save('{language} Translations:'.format(
- language=soup.find(id="trg-selector").find('span', class_="option front").text))
- for _, wd in zip(range(5), soup.find_all(class_="display-term")):
- save(wd.text)
- save('\n{language} Examples:'.format(
- language=soup.find(id="trg-selector").find('span', class_="option front").text))
- for _, sentence in zip(range(5), soup.find_all(class_="example")):
- for sen in sentence.find_all(class_="text"):
- save((sen.text[12:]))
- save("\n")
- def text_all(soup):
- save('{language} Translations:'.format(
- language=soup.find(id="trg-selector").find('span', class_="option front").text))
- save(soup.find(class_="display-term").text)
- save('\n{} Example:'.format(
- soup.find(id="trg-selector").find('span', class_="option front").text))
- sentence = soup.find(class_="example")
- for sen in sentence.find_all(class_="text"):
- save((sen.text[12:]))
- save("\n")
- def out(language1, language2, word):
- if language2 == 'all':
- for value in languages.values():
- if value.lower() != language1:
- site = requests.get('https://context.reverso.net/translation/{}-{}/{}'. \
- format(language1.lower(),
- value.lower(),
- word.lower()), headers=headers)
- text_all(BeautifulSoup(site.content, 'html.parser'))
- else:
- site = requests.get('https://context.reverso.net/translation/{}-{}/{}'. \
- format(language1.lower(),
- language2.lower(),
- word.lower()), headers=headers)
- text(BeautifulSoup(site.content, 'html.parser'))
- def save(sen):
- file = open('{}.txt'.format(word), 'a+', encoding='utf-8')
- file.writelines(sen + '\n')
- print(sen)
- file.close()
- if __name__ == '__main__':
- language1 = sys.argv[1]
- language2 = sys.argv[2]
- word = sys.argv[3]
- out(language1, language2, word)
Advertisement
Add Comment
Please, Sign In to add comment