Update main.py
Browse files
main.py
CHANGED
|
@@ -1022,32 +1022,76 @@ async def ChiffresClesMetier(url, codes):
|
|
| 1022 |
for i in range(0,len(codeArray)):
|
| 1023 |
response = requests.get(url + codeArray[i])
|
| 1024 |
soup = BeautifulSoup(response.text, "html.parser")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1025 |
alltitre = soup.select('h1#titreMetier')
|
|
|
|
|
|
|
|
|
|
| 1026 |
allembauches = soup.select('div.jobs_item-container-flex')
|
|
|
|
|
|
|
|
|
|
| 1027 |
allsalaires = soup.select('div.key-number_block.shadow.inset')
|
|
|
|
|
|
|
|
|
|
| 1028 |
allsalairesMedian = soup.select('tbody.sectorTable__body')
|
|
|
|
|
|
|
|
|
|
| 1029 |
allDiff = soup.select('div.dynamism_canvas-wrapper > p.sr-only')
|
|
|
|
|
|
|
|
|
|
| 1030 |
allDiffOrigin = soup.select('div.tabs-main-data_persp-col2')
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1031 |
allContrat = soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted")
|
| 1032 |
-
allTypeContrat = ""
|
| 1033 |
for j in range(0,len(allContrat)):
|
| 1034 |
allTypeContrat = allTypeContrat + removeTags(allContrat[j]) + ", "
|
|
|
|
| 1035 |
allEntreprise = soup.find_all("div", class_="horizontal-graph_patterns")
|
| 1036 |
-
|
| 1037 |
-
|
| 1038 |
-
response = requests.get(url + codes)
|
| 1039 |
-
soup = BeautifulSoup(response.text, "html.parser")
|
| 1040 |
-
alltitre = soup.select('h1#titreMetier')
|
| 1041 |
-
allembauches = soup.select('div.jobs_item-container-flex')
|
| 1042 |
-
allsalaires = soup.select('div.key-number_block.shadow.inset')
|
| 1043 |
-
allsalairesMedian = soup.select('tbody.sectorTable__body')
|
| 1044 |
-
allDiff = soup.select('div.dynamism_canvas-wrapper > p.sr-only')
|
| 1045 |
-
allDiffOrigin = soup.select('div.tabs-main-data_persp-col2')
|
| 1046 |
-
allContrat = soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted")
|
| 1047 |
-
allTypeContrat = ""
|
| 1048 |
-
for j in range(0,len(allContrat)):
|
| 1049 |
-
allTypeContrat = allTypeContrat + removeTags(allContrat[j]) + ", "
|
| 1050 |
-
allEntreprise = soup.find_all("div", class_="horizontal-graph_patterns")
|
| 1051 |
all = "\n\nChiffres-clés Métier " + removeTags(alltitre[0]) + ":\nDemandeurs d'emploi et Offres d'emploi : " + removeTags(allembauches[0]) + ". Salaires proposés dans les offres : " + removeTags(allsalaires[0]) + ". Salaires médians constatés : " + removeTags(allsalairesMedian[0]) + ". Difficultés de recrutement pour les entreprises : " + removeTags(allDiff[0]) + ". Origine des difficultés : " + removeTags(allDiffOrigin[0]) + ". Répartition des embauches par type de contrat : " + allTypeContrat + ". Répartition des embauches par taille d'entreprise : " + removeTags(allEntreprise[0]) + "."
|
| 1052 |
return all
|
| 1053 |
|
|
|
|
| 1022 |
for i in range(0,len(codeArray)):
|
| 1023 |
response = requests.get(url + codeArray[i])
|
| 1024 |
soup = BeautifulSoup(response.text, "html.parser")
|
| 1025 |
+
if soup.select('h1#titreMetier'):
|
| 1026 |
+
alltitre = soup.select('h1#titreMetier')
|
| 1027 |
+
else:
|
| 1028 |
+
alltitre = [" "]
|
| 1029 |
+
if soup.select('div.jobs_item-container-flex'):
|
| 1030 |
+
allembauches = soup.select('div.jobs_item-container-flex')
|
| 1031 |
+
else:
|
| 1032 |
+
allembauches = [" "]
|
| 1033 |
+
if soup.select('div.key-number_block.shadow.inset'):
|
| 1034 |
+
allsalaires = soup.select('div.key-number_block.shadow.inset')
|
| 1035 |
+
else:
|
| 1036 |
+
allsalaires = [" "]
|
| 1037 |
+
if soup.select('tbody.sectorTable__body'):
|
| 1038 |
+
allsalairesMedian = soup.select('tbody.sectorTable__body')
|
| 1039 |
+
else:
|
| 1040 |
+
allsalairesMedian = [" "]
|
| 1041 |
+
if soup.select('div.dynamism_canvas-wrapper > p.sr-only'):
|
| 1042 |
+
allDiff = soup.select('div.dynamism_canvas-wrapper > p.sr-only')
|
| 1043 |
+
else:
|
| 1044 |
+
allDiff = [" "]
|
| 1045 |
+
if soup.select('div.tabs-main-data_persp-col2'):
|
| 1046 |
+
allDiffOrigin = soup.select('div.tabs-main-data_persp-col2')
|
| 1047 |
+
else:
|
| 1048 |
+
allDiffOrigin = [" "]
|
| 1049 |
+
allTypeContrat = ""
|
| 1050 |
+
if soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted"):
|
| 1051 |
+
allContrat = soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted")
|
| 1052 |
+
for j in range(0,len(allContrat)):
|
| 1053 |
+
allTypeContrat = allTypeContrat + removeTags(allContrat[j]) + ", "
|
| 1054 |
+
if soup.find_all("div", class_="horizontal-graph_patterns"):
|
| 1055 |
+
allEntreprise = soup.find_all("div", class_="horizontal-graph_patterns")
|
| 1056 |
+
else:
|
| 1057 |
+
allEntreprise = [" "]
|
| 1058 |
+
all = all + "\n\nChiffres-clés Métier " + removeTags(alltitre[0]) + ":\nDemandeurs d'emploi et Offres d'emploi : " + removeTags(allembauches[0]) + ". Salaires proposés dans les offres : " + removeTags(allsalaires[0]) + ". Salaires médians constatés : " + removeTags(allsalairesMedian[0]) + ". Difficultés de recrutement pour les entreprises : " + removeTags(allDiff[0]) + ". Origine des difficultés : " + removeTags(allDiffOrigin[0]) + ". Répartition des embauches par type de contrat : " + allTypeContrat + ". Répartition des embauches par taille d'entreprise : " + removeTags(allEntreprise[0]) + "."
|
| 1059 |
+
else:
|
| 1060 |
+
response = requests.get(url + codes)
|
| 1061 |
+
soup = BeautifulSoup(response.text, "html.parser")
|
| 1062 |
+
if soup.select('h1#titreMetier'):
|
| 1063 |
alltitre = soup.select('h1#titreMetier')
|
| 1064 |
+
else:
|
| 1065 |
+
alltitre = [" "]
|
| 1066 |
+
if soup.select('div.jobs_item-container-flex'):
|
| 1067 |
allembauches = soup.select('div.jobs_item-container-flex')
|
| 1068 |
+
else:
|
| 1069 |
+
allembauches = [" "]
|
| 1070 |
+
if soup.select('div.key-number_block.shadow.inset'):
|
| 1071 |
allsalaires = soup.select('div.key-number_block.shadow.inset')
|
| 1072 |
+
else:
|
| 1073 |
+
allsalaires = [" "]
|
| 1074 |
+
if soup.select('tbody.sectorTable__body'):
|
| 1075 |
allsalairesMedian = soup.select('tbody.sectorTable__body')
|
| 1076 |
+
else:
|
| 1077 |
+
allsalairesMedian = [" "]
|
| 1078 |
+
if soup.select('div.dynamism_canvas-wrapper > p.sr-only'):
|
| 1079 |
allDiff = soup.select('div.dynamism_canvas-wrapper > p.sr-only')
|
| 1080 |
+
else:
|
| 1081 |
+
allDiff = [" "]
|
| 1082 |
+
if soup.select('div.tabs-main-data_persp-col2'):
|
| 1083 |
allDiffOrigin = soup.select('div.tabs-main-data_persp-col2')
|
| 1084 |
+
else:
|
| 1085 |
+
allDiffOrigin = [" "]
|
| 1086 |
+
allTypeContrat = ""
|
| 1087 |
+
if soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted"):
|
| 1088 |
allContrat = soup.find_all("div", class_="hiring-contract_legende_item ng-star-inserted")
|
|
|
|
| 1089 |
for j in range(0,len(allContrat)):
|
| 1090 |
allTypeContrat = allTypeContrat + removeTags(allContrat[j]) + ", "
|
| 1091 |
+
if soup.find_all("div", class_="horizontal-graph_patterns"):
|
| 1092 |
allEntreprise = soup.find_all("div", class_="horizontal-graph_patterns")
|
| 1093 |
+
else:
|
| 1094 |
+
allEntreprise = [" "]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1095 |
all = "\n\nChiffres-clés Métier " + removeTags(alltitre[0]) + ":\nDemandeurs d'emploi et Offres d'emploi : " + removeTags(allembauches[0]) + ". Salaires proposés dans les offres : " + removeTags(allsalaires[0]) + ". Salaires médians constatés : " + removeTags(allsalairesMedian[0]) + ". Difficultés de recrutement pour les entreprises : " + removeTags(allDiff[0]) + ". Origine des difficultés : " + removeTags(allDiffOrigin[0]) + ". Répartition des embauches par type de contrat : " + allTypeContrat + ". Répartition des embauches par taille d'entreprise : " + removeTags(allEntreprise[0]) + "."
|
| 1096 |
return all
|
| 1097 |
|