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