-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdevoir3.py
47 lines (37 loc) · 1.35 KB
/
devoir3.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# coding : utf-8
import requests, csv
from bs4 import BeautifulSoup
fichier = "devoir3.csv"
# Mon but est de voir les villes d'origine et les destinations des vols que la compagnie Air Transat considère comme étant "pas chers".
url = "https://www.airtransat.com/fr-CA/vols-pas-chers-du-canada?ici=footerlink&icn=cheap-flights_french"
entetes = {
"User-Agent":"Éloi Fournier, étudiant en journalisme à l'UQAM"
}
site = requests.get(url, headers=entetes)
page = BeautifulSoup(site.text, "html.parser")
# print(page)
n = 0
# Cette fonction me permet d'obtenir tous les vols pas chers d'Air Transat par pays de destination.
vols = page.find_all("li", class_="CMSSiteMapListItem")
print(site.status_code)
# print(vols)
# Ma boucle, qui me permettra d'extraire les données que je recherche pour le csv.
for vol in vols:
infos=[]
n += 1
urlVol = vol.find("a")["href"]
nomVol = (" ") + vol.find("a").text.strip()
# print(n, urlVol)
if "https" in urlVol:
print(n, urlVol)
else:
urlVol2 = " https://www.airtransat.com" + str(urlVol)
print(n, urlVol2)
print(nomVol)
infos.append(n)
infos.append(urlVol2)
infos.append(nomVol)
# Code menant à la création de mon csv.
air = open(fichier,"a")
transat = csv.writer(air)
transat.writerow(infos)