Prérequis :
python3.4
windows
Fonction : Rechercher des articles WeChat pertinents via l'interface de recherche WeChat de Sogou et importer des titres et des liens associés dans des tableaux Excel Moyen
Remarque : Le module xlsxwriter est requis et le temps d'écriture du programme est le 11/07/2017, afin d'éviter que le programme ne soit inutilisable ultérieurement, ce qui peut être lié à des modifications du site Web. simple, avec plus de 40 lignes de commentaires supprimées.
Sujet principal :
Idée : Ouvrir l'URL initiale --> Récupérer le titre et le lien régulièrement --> Modifier la boucle de la page dans la deuxième étape --> titre et lien dans Excel
La première étape du robot est de le faire manuellement (potins)
Entrez l'URL mentionnée ci-dessus, telle que la saisie : "reconnaissance d'image", recherche, l'URL deviendra "" marqué en rouge. Lorsque type=1, il recherche des comptes officiels. Quoi qu'il en soit, query='search keywords', les mots-clés ont été codés, et il y a aussi un paramètre caché page=1.
lorsque vous passez à la seconde Lorsque vous cliquez sur la page, vous pouvez voir "" +search+'&page='+str(page)
search est le mot-clé à utiliser recherché. Utilisez l'encodage quote() pour insérer
1 search = urllib.request.quote(search)
L'URL complète a été obtenue. Ensuite, visitez l'URL pour obtenir les données (Créez un objet d'ouverture et ajoutez un en-tête())
1 for page in range(1,pagenum+1): 2 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)
Obtenir. le contenu de la page et utiliser des expressions régulières pour obtenir des données pertinentes
1 import urllib.request 2 header = ('User-Agent','Mozilla/5.0') 3 opener = urllib.request.build_opener() 4 opener.addheaders = [header] 5 urllib.request.install_opener(opener) 6 data = urllib.request.urlopen(url).read().decode()
Il existe des éléments d'interférence (lien : 'amp;') et des éléments non pertinents (titre : '< ;...><....>') dans les données obtenues par régularisation, utilisez replace() pour résoudre
1 import re 2 finddata = re.compile('<a target="_blank" href="(.*?)".*?uigs="article_title_.*?">(.*?)</a>').findall(data) 3 #finddata = [('',''),('','')]
1 title = title.replace('<em><!--red_beg-->','') 2 title = title.replace('<!--red_end--></em>','')
1 link = link.replace('amp;','')
Les titres et liens ainsi recherchés sont obtenus. Ensuite, importez Excel
Créez d'abord Excel1 title_link.append(link) 2 title_link.append(title)
et ajoutez-y title_link Importez des données dans Excel
1 import xlsxwriter 2 workbook = xlsxwriter.Workbook(search+'.xlsx')
3 worksheet = workbook.add_worksheet('微信')
1 for i in range(0,len(title_link),2): 2 worksheet.write('A'+str(i+1),title_link[i+1]) 3 worksheet.write('C'+str(i+1),title_link[i]) 4 workbook.close()
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!