После осмотра я не смог найти ни одного ответа, соответствующего моей проблеме ...
Дело в том, что я анализирую URL и получаю исходный код, затем я хочу составить список дат, но они в двух разных <class>
!
если я сделаю это:
pattern='<h5 class="preparation|soutenue">(.+?(?=</h5>))'
, он вернет только содержимое <class="soutenue">
и пустые значения для <class="preparation">
* У меня есть ie много других шаблонов, но они всегда будут возвращать мне пустой список ...
Если кто-то может помочь, будет очень признателен.
Вот полный код, если вы хочу попробовать это: Python 3,8
# coding: utf8
import requests
import re
import pdb
from os import getcwd #getcwd() donne le repertoire courant ou se situe le script
from os.path import *
import os
#PARSING
#Var chemin du dossier "pages"
test_dossier = (getcwd()+"\\pages")
#Boucle pour parser les 6 pages
x=0
while x<=50:
url= 'http://theses.fr/fr/?q=crypto%20monnaies&start='+str(x)
request_headers={'User-Agent': "(Mozilla/5.0 (Windows; U; Windows NT 6.0;en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6" }
req=requests.get(url,headers=request_headers,timeout=10)
content=req.text
#Verification que le dossier existe sinon le crée
if exists(test_dossier):
with open('pages/theses'+str(x)+'.txt','w', encoding='utf8') as output:
output.write(content)
else :
os.mkdir(test_dossier)
with open('pages/theses'+str(x)+'.txt','w', encoding='utf8') as output:
output.write(content)
x+=10
print("Parsing ok !")
#GET DATAS
tab_dates=[]
for j in range(0,51,10):
with open('pages/theses'+str(j)+'.txt', 'r',encoding='utf8') as output:
contenu=output.read()
pattern='<h5 class="preparation|soutenue">(.+?(?=</h5>))'
result=re.findall(pattern, contenu)
tab_dates.append(result)
print(tab_dates)
print("datas ok !")