Contenu pratique : obtenez les noms chinois et anglais, les noms de Hong Kong et de Taiwan, les réalisateurs, les années de sortie, les classifications et les classements des films TOP250 de Douban, et stockez les données dans des bases de données et des fichiers. Le lien est : https://movie.douban.com/top250?start=.
Nous avons déjà présenté de nombreuses façons d’explorer les données d’une page Web. Explorons les données ci-dessous.
importreimportrequestsfrombs4importBeautifulSoupforiinrange(0,2):headers={#Ceci simule un navigateur pour accéder à l'agent utilisateur':'Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/52.0.2743.82Safari /537. 36','Hôte':'movie.douban.com'}res='https://movie.douban.com/top250?start='+str(25*i)#25 fois r=requests.get(res ,headers=headers,timeout=10)#Définissez le délai d'attente soup=BeautifulSoup(r.text,html.parser)#Définissez la méthode d'analyse, vous pouvez également imprimer(soupe)
Le résultat est :
<!DOCTYPEhtml><htmlclass=ua-windowsua-webkit><head><metacontent=text/html;charset=utf-8http-equiv=Content-Type/><metacontent=webkitname=renderer/><metacontent=alwaysname=referrer /><metacontent=ok0wCgT20tBBg o9_zat2iAcimtN4Ftf5ccsh092Xeywname=google-site-verification><title>Top250 des films Douban</title>.....</script><!--dae-web-movie--default-759d9f45f7-b69fc-->< script>_SPLITTEST =''</script></link></link></body></html>
Ici, nous utilisons la fonction mad5() dans le module hashlib en Python. Le code de vérification est le suivant Si vous venez d'explorer les données, vous pouvez omettre cette étape.
MD5 est un algorithme de chiffrement couramment utilisé dans le domaine de la sécurité informatique.
importhashlibdefvertifyupdate(html):md5=hashlib.md5()md5.update(html.encode(encoding='utf-8'))md5code=md5.hexdigest()print(md5code)old_html=''htlm_name='gp.txt 'ifos.path.exists(htlm_name):avec hopen(htlm_name,'r',encoding='utf-8')asf:old_html=f.read()ifmd5code==old_html:print('données non mises à jour')returnFalseelse:withopen(htlm_name,'w',encoding= 'utf-8')asf:f.write(md5code)print('données mises à jour')returnTrue
Cette fonction doit importer le module hashlib, puis créer un objet md5, transmettre les informations de la page actuelle et effectuer des opérations MD5 sur les données entrantes en utilisant la méthode updata().
Utilisez ensuite l'instruction if pour déterminer si le fichier existe. S'il existe, lisez le code MD5 qu'il contient, puis déterminez si les deux codes MD5 sont identiques. S'ils sont identiques, cela signifie qu'il n'y a pas de mise à jour. il a été mis à jour et le nouveau code MD5 est transmis dans le fichier.
L'exploration des données est la première étape que nous devons effectuer. Si les données ont été stockées pendant une longue période avant d'être utilisées, elles doivent être détectées. Ce sont des étapes relativement simples. La partie la plus difficile est de savoir comment obtenir des données plus précises. section suivante Faisons une analyse des données.