Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ------------------------
- EXPLANATION:
- ROMANIAN: https://neculaifantanaru.com/python-adauga-in-tagul-html-meta-name-description-primele-80-de-cuvinte-din-sectiunea-text.html
- ENGLISH: https://neculaifantanaru.com/en/python-add-the-first-80-words-of-the-text-section-to-the-meta-description-html-tag.html
- ------------------------
- import requests
- import re
- import os
- cale_folder_html = r"d:\\Folder1\\fisiere_html_modificate"
- extension_file = ".html"
- def read_text_from_file(file_path):
- """
- Aceasta functie returneaza continutul unui fisier.
- file_path: calea catre fisierul din care vrei sa citesti
- """
- with open(file_path, encoding='utf8') as f:
- text = f.read()
- return text
- def write_to_file(text, file_path):
- """
- Aceasta functie scrie un text intr-un fisier.
- text: textul pe care vrei sa il scrii
- file_path: calea catre fisierul in care vrei sa scrii
- """
- with open(file_path, 'wb') as f:
- f.write(text.encode('utf8', 'ignore'))
- print('Going through folder')
- amount = 1
- # prelucrare continut
- dict_simboluri = dict()
- dict_simboluri['ă'] = 'a'
- dict_simboluri['â'] = 'a'
- dict_simboluri['ã'] = 'a'
- dict_simboluri['â'] = 'a'
- dict_simboluri['ă'] = 'a'
- dict_simboluri['â'] = 'a'
- dict_simboluri['ӑ'] = 'a'
- dict_simboluri['ȃ'] = 'a'
- dict_simboluri['â'] = 'a'
- dict_simboluri['ă'] = 'a'
- dict_simboluri['ã'] = 'a'
- dict_simboluri['à'] = 'a'
- dict_simboluri['á'] = 'a'
- dict_simboluri['å'] = 'a'
- dict_simboluri['ä'] = 'a'
- dict_simboluri['â'] = 'a'
- dict_simboluri['…'] = ''
- dict_simboluri['…'] = ''
- dict_simboluri['\"'] = ''
- dict_simboluri['–'] = '- '
- dict_simboluri[' '] = ' '
- dict_simboluri['Â '] = ' '
- dict_simboluri['Â '] = ' '
- dict_simboluri['''] = '\''
- dict_simboluri['„'] = '\''
- dict_simboluri['”'] = '\''
- dict_simboluri['['] = ''
- dict_simboluri[']'] = ''
- dict_simboluri['/'] = ''
- dict_simboluri['}'] = ''
- dict_simboluri['{'] = ''
- dict_simboluri['î'] = 'i'
- dict_simboluri['Î'] = 'i'
- dict_simboluri['î'] = 'i'
- dict_simboluri['î'] = 'i'
- dict_simboluri['Î'] = 'i'
- dict_simboluri['Î'] = 'i'
- dict_simboluri['î'] = 'i'
- dict_simboluri['Î'] = 'i'
- dict_simboluri['ȋ'] = 'i'
- dict_simboluri['î'] = 'i'
- dict_simboluri['Î'] = 'I'
- dict_simboluri['Ĩ'] = 'I'
- dict_simboluri['Ĩ'] = 'I'
- dict_simboluri['Î'] = 'I'
- dict_simboluri['Î'] = 'Ĩ'
- dict_simboluri['ī'] = 'i'
- dict_simboluri['ĭ'] = 'i'
- dict_simboluri['í'] = 'i'
- dict_simboluri['!'] = ' '
- dict_simboluri['('] = '-'
- dict_simboluri[')'] = ' '
- dict_simboluri[' '] = ' '
- dict_simboluri[',,'] = ' '
- dict_simboluri['Ĩ'] = 'I'
- dict_simboluri['é'] = 'e'
- dict_simboluri['ê'] = 'e'
- dict_simboluri['é'] = 'e'
- dict_simboluri['a©'] = 'e'
- dict_simboluri['è'] = 'e'
- dict_simboluri['ë'] = 'e'
- dict_simboluri['Ë'] = 'e'
- dict_simboluri['ș'] = 's'
- dict_simboluri['Ș'] = 's'
- dict_simboluri['Ş'] = 's'
- dict_simboluri['ș'] = 's'
- dict_simboluri['ş'] = 's'
- dict_simboluri['ş'] = 's'
- dict_simboluri['ș'] = 's'
- dict_simboluri['Ş'] = 'S'
- dict_simboluri['Ș'] = 'S'
- dict_simboluri['Ș'] = 'S'
- dict_simboluri['š'] = 's'
- dict_simboluri['ś'] = 's'
- dict_simboluri['ș'] = 's'
- dict_simboluri['ṣ'] = 's'
- dict_simboluri['"'] = ''
- dict_simboluri['’'] = ''
- dict_simboluri['”'] = ''
- dict_simboluri['’'] = ''
- dict_simboluri['„'] = ''
- dict_simboluri['“'] = ''
- dict_simboluri['„'] = ''
- dict_simboluri['“'] = ''
- dict_simboluri['”'] = ''
- dict_simboluri['<'] = ''
- dict_simboluri['<'] = ''
- dict_simboluri['«'] = ''
- dict_simboluri['»'] = ''
- dict_simboluri['“'] = ''
- dict_simboluri['”'] = ''
- dict_simboluri['"'] = ''
- dict_simboluri[':'] = ''
- dict_simboluri['&'] = ''
- dict_simboluri['ț'] = 't'
- dict_simboluri['ţ'] = 't'
- dict_simboluri['Ţ'] = 't'
- dict_simboluri['ț'] = 't'
- dict_simboluri['ţ'] = 't'
- dict_simboluri['ț'] = 't'
- dict_simboluri['Ţ'] = 'T'
- dict_simboluri['Ț'] = 'T'
- dict_simboluri['ť'] = 't'
- dict_simboluri['ṭ'] = 't'
- for filename in os.listdir(cale_folder_html):
- if filename == 'y_key_e479323ce281e459.html' or filename == 'directory.html':
- continue
- if filename.endswith('.html'):
- cale_fisier_html = cale_folder_html + "\\" + filename
- html_text = read_text_from_file(cale_fisier_html)
- articol_pattern = re.compile('<!-- ARTICOL START -->([\s\S]*?)<!-- ARTICOL FINAL -->[\s\S]*?')
- articol_text = re.findall(articol_pattern, html_text)
- if len(articol_text) > 0:
- articol_text = articol_text[0]
- meta_description = re.search('<meta name="description".+>', html_text)[0]
- initial_meta_description = re.search('<meta name="description" content="(.+)".*>', html_text)[1]
- para_pattern = re.compile('<p.+>(.*?)</p>')
- para = re.findall(para_pattern, articol_text)
- if len(para) > 0:
- lista_cuvinte = list()
- for txt in para:
- for simbol in dict_simboluri.keys():
- txt = txt.replace(simbol, dict_simboluri[simbol])
- lista_cuvinte.extend(re.findall(r'[a-zA-Z\-\']+', txt))
- content = " ".join(lista_cuvinte[:80])
- new_meta_description = re.sub(r'content=".+"', f'content="{content}"', meta_description)
- html_text = html_text.replace(meta_description, new_meta_description)
- print(f'{filename} parsed ({amount})')
- amount += 1
- write_to_file(html_text, cale_fisier_html)
- else:
- print("Nu am gasit tag-uri cu text_obisnuit2: ", filename)
- continue
- else:
- print("Nu are ARTICOL START/FINAL: ", filename)
- continue
- else:
- continue
Advertisement
Add Comment
Please, Sign In to add comment