Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
881 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  [PYTHON] Help compréhension script

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PYTHON] Help compréhension script

n°2296244
guillaume9​475
Posté le 12-02-2017 à 18:40:56  profilanswer
 

Hello les amis,
 
J'utilise actuellement un script python qui m'aide à élaborer des base de données Excel à partir de contacts sur Linkedin (je récupère prénom/nom, société et poste dans un tableau excel)
Je vois le fonctionnement globale de ce dernier :  
- il récupère les données du fichier HTML de la page
- le convertit en json
- parse ce dernier selon des délimiteurs données
- test pour voir si champs vides etc
- création d'un fichier excel avec les contenus parsés
 
Cependant, j'aurais aimé avec des commentaires plus précis sur ce code (ne codant pas sur python).
Si une âme charitable pouvait m'aider, je lui serais reconnaissant :)
 
Bonne soirée à vous,
Guillaume
 
http://reho.st/preview/self/8caa50d14402669d04ce89683ea5a58bfc06329e.png
 

mood
Publicité
Posté le 12-02-2017 à 18:40:56  profilanswer
 

n°2296286
rat de com​bat
attention rongeur méchant!
Posté le 13-02-2017 à 04:14:08  profilanswer
 

Avec un code source sous forme d'image c'est déjà très mal parti. :o

n°2296296
guillaume9​475
Posté le 13-02-2017 à 09:46:31  profilanswer
 

rat de combat a écrit :

Avec un code source sous forme d'image c'est déjà très mal parti. :o


 
Comment je peux insérer mon .py ?  [:tamahome:1]

n°2296312
rat de com​bat
attention rongeur méchant!
Posté le 13-02-2017 à 11:05:56  profilanswer
 

copier-coller le contenu et utiliser le bouton http://forum-images.hardware.fr/icones/message/c.gif pour bien faire!


Message édité par rat de combat le 13-02-2017 à 11:06:37
n°2296316
guillaume9​475
Posté le 13-02-2017 à 11:18:08  profilanswer
 


La première partie est en commentaire, ne pas en tenir compte.
Prendre le corps à partir de la ligne 73
 
C'est mieux ?
 
 

Code :
  1. import json
  2. from xlwt import Workbook
  3. import xlrd
  4. # création
  5. import os
  6. resultats={}
  7. # ajout des valeurs dans la ligne suivante
  8. """
  9. def editXLS(name,htmlname):
  10.  cells=[]
  11. classeur = xlrd.open_workbook(name+".xls" )
  12. nom_des_feuilles = classeur.sheet_names()
  13. feuille = classeur.sheet_by_name(nom_des_feuilles[0])
  14. result="a"
  15. x=0
  16. for row in range(classeur.feuille.nrows):
  17.      cells.append([])
  18.      for col in range(classeur.feuille.ncols):
  19.          cells[row].append(workbook.cell(row, col).value)
  20. path_fichier=htmlname+".html"
  21. with open(path_fichier,"r" ) as fichier:
  22.  contenu = fichier.read()
  23.  contenus=contenu.split("<code id=\"embedded-json\">" )
  24.  contenus2=contenus[1].split("</code>" )[0]
  25.  contenus2=contenus2.split("<!--" )[1]
  26.  contenus2=contenus2.split("-->" )[0]
  27. with open("results.json","w" ) as fichier:
  28.  fichier.write(contenus2)
  29. with open("results.json","r" ) as fichier:
  30.  data =json.load(fichier)
  31.  data= data["searchResults"]
  32. j=0
  33. for i in range(len(data)):
  34.  lignei = feuil1.row(i+1)
  35.  lignei.write(0,data[i]["member"]["formattedName" ])
  36.  lignei.write(1,data[i]["company"]["companyName"])
  37.  lignei.write(2,data[i]["member"]["title"])
  38.  j=i+1
  39. lignei=feuil1.row(j)
  40. lignei.write(0,"" )
  41. book.save(name+".xls" )
  42. # création matérielle du fichier résultant
  43. def createXLS(name):
  44. book = Workbook()
  45. # création de la feuille 1
  46. feuil1 = book.add_sheet('results')
  47. # ajout des en-têtes
  48. feuil1.write(0,0,'Nom')
  49. feuil1.write(0,1,'Entreprise')
  50. feuil1.write(0,2,'Poste')
  51. book.save(name+".xls" )
  52. """
  53. def treat_file(path_fichier):
  54. global resultats
  55. with open(path_fichier,"r" ) as fichier:
  56.  contenu = fichier.read()
  57.  contenus=contenu.split("<code id=\"embedded-json\">" )
  58.  contenus2=contenus[1].split("</code>" )[0]
  59.  contenus2=contenus2.split("<!--" )[1]
  60.  contenus2=contenus2.split("-->" )[0]
  61. with open("json/"+str(len(resultats))+".json","w" ) as fichier:
  62.  fichier.write(contenus2)
  63. with open("json/"+str(len(resultats))+".json","r" ) as fichier:
  64.  data =json.load(fichier)
  65.  data= data["searchResults"]
  66. data2={}
  67. for i in range(len(data)):
  68.  if(("companyName"in data[i]["company"])==False and ("title" in data[i]["member"])==False ):
  69.   data2[i]=[data[i]["member"]["formattedName" ],"",""]
  70.  elif(("companyName"in data[i]["company"]) ==False):
  71.   data2[i]=[data[i]["member"]["formattedName" ],"",data[i]["member"]["title"]]
  72.  elif(("title" in data[i]["member"])==False):
  73.   data2[i]=[data[i]["member"]["formattedName" ],data[i]["company"]["companyName"],""]
  74.  else:
  75.   data2[i]=[data[i]["member"]["formattedName" ],data[i]["company"]["companyName"],data[i]["member"]["title"]]
  76. resultats[len(resultats)]=data2
  77. def main():
  78. folder_path="resultats_HTML"
  79. book = Workbook()
  80. i = 1
  81. for path, dirs, files in os.walk(folder_path):
  82.  for filename in files:
  83.   treat_file(folder_path+"/"+filename)
  84.  # création de la feuille 1
  85. feuil1 = book.add_sheet('results')
  86. # ajout des en-têtes
  87. feuil1.write(0,0,'Nom')
  88. feuil1.write(0,1,'Entreprise')
  89. feuil1.write(0,2,'Poste')
  90. for key, value in resultats.items():
  91.  for key2, value2 in value.items():
  92.   feuil1.write(i,0,value2[0])
  93.   feuil1.write(i,1,value2[1])
  94.   feuil1.write(i,2,value2[2])
  95.   i+=1
  96. book.save("liste.xls" )
  97. main()

n°2296470
guillaume9​475
Posté le 15-02-2017 à 11:50:21  profilanswer
 

up ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  [PYTHON] Help compréhension script

 

Sujets relatifs
Script d'extraction de donnéeslancer un programme python en ligne de commande sous windows
python installation moduleAide Php + Python (débutant)
Résolution d'un calcul ?Le CSS de mon site Help Pls !
Script java media captive pour les sites web et appareil mobil[Python] subprocess absent des ancienne versions de python
Nginx et python ou python et QT ?Lister les comptes d'un ordinateur via script
Plus de sujets relatifs à : [PYTHON] Help compréhension script


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR