python3爬取微信文章
前提:
python3.4
windows
作用:通过搜狗的微信搜索接口来搜索相关微信文章,并将标题及相关链接导入Excel表格中
说明:需xlsxwriter模块,另程序编写时间为2017/7/11,以免之后程序无法使用可能是网站做过相关改变,程序较为简单,除去注释40多行。
正题:
思路:打开初始Url --> 正则获取标题及链接 --> 改变page循环第二步 --> 将得到的标题及链接导入Excel
爬虫的第一步都是先手工操作一遍(闲话)
进入上面提到的网址,如输入:“图片识别”,搜索,网址变为“”标红为重要参数,type=1时是搜索公众号,暂且不管,query=‘搜索关键词’,关键词已经被编码,还有一个隐藏参数page=1
当你跳到第二页时可以看到“”
好了,url可以得到了
1 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)
search是要搜索的关键词,用quote()编码即可插入
1 search = urllib.request.quote(search)
page是用来循环的
1 for page in range(1,pagenum+1): 2 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)
完整的url已经得到了,接下来访问url,获得其中的数据(创建opener对象,添加header())
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()
得到页面内容,采用正则表达获取相关数据
1 import re 2 finddata = re.compile('<a target="_blank" href="(.*?)".*?uigs="article_title_.*?">(.*?)</a>').findall(data) 3 #finddata = [('',''),('','')]
通过正则获取的数据中存在干扰项(链接:‘amp;’)和无关项(标题:'<...><....>'),用replace()解决
1 title = title.replace('<em><!--red_beg-->','') 2 title = title.replace('<!--red_end--></em>','')
1 link = link.replace('amp;','')
将处理后的标题和链接保存在列表中
1 title_link.append(link) 2 title_link.append(title)
如此搜索的标题和链接都得到了,接下来导入Excel
先创建Excel
1 import xlsxwriter 2 workbook = xlsxwriter.Workbook(search+'.xlsx')
3 worksheet = workbook.add_worksheet('微信')
将title_link中的数据导入Excel
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()
完整代码:
1 ''' 2 python3.4 + windows 3 羽凡-2017/7/11- 4 用于搜索微信文章,保存标题及链接至Excel中 5 每个页面10秒延迟,防止被限制 6 import urllib.request,xlsxwriter,re,time 7 ''' 8 import urllib.request 9 search = str(input("搜索微信文章:")) 10 pagenum = int(input('搜索页数:')) 11 import xlsxwriter 12 workbook = xlsxwriter.Workbook(search+'.xlsx') 13 search = urllib.request.quote(search) 14 title_link = [] 15 for page in range(1,pagenum+1): 16 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page) 17 import urllib.request 18 header = ('User-Agent','Mozilla/5.0') 19 opener = urllib.request.build_opener() 20 opener.addheaders = [header] 21 urllib.request.install_opener(opener) 22 data = urllib.request.urlopen(url).read().decode() 23 import re 24 finddata = re.compile('<a target="_blank" href="(.*?)".*?uigs="article_title_.*?">(.*?)</a>').findall(data) 25 #finddata = [('',''),('','')] 26 for i in range(len(finddata)): 27 title = finddata[i][1] 28 title = title.replace('<em><!--red_beg-->','') 29 title = title.replace('<!--red_end--></em>','') 30 try: 31 #标题中可能存在引号 32 title = title.replace('“','"') 33 title = title.replace('”','"') 34 except: 35 pass 36 link = finddata[i][0] 37 link = link.replace('amp;','') 38 title_link.append(link) 39 title_link.append(title) 40 print('第'+str(page)+'页') 41 import time 42 time.sleep(10) 43 worksheet = workbook.add_worksheet('微信') 44 worksheet.set_column('A:A',70) 45 worksheet.set_column('C:C',100) 46 bold = workbook.add_format({'bold':True}) 47 worksheet.write('A1','标题',bold) 48 worksheet.write('C1','链接',bold) 49 for i in range(0,len(title_link),2): 50 worksheet.write('A'+str(i+1),title_link[i+1]) 51 worksheet.write('C'+str(i+1),title_link[i]) 52 workbook.close() 53 print('导入Excel完毕!')
Atas ialah kandungan terperinci python3爬取微信文章. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

1. Bagaimanakah anda boleh membuat wang dengan menerbitkan artikel di Toutiao hari ini? Bagaimana untuk mendapatkan lebih banyak pendapatan dengan menerbitkan artikel di Toutiao hari ini! 1. Aktifkan hak dan kepentingan asas: Artikel asal boleh memperoleh keuntungan melalui pengiklanan dan video mestilah asli dalam mod skrin mendatar untuk memperoleh keuntungan. 2. Aktifkan hak 100 peminat: jika bilangan peminat mencecah 100 peminat ke atas, anda boleh mendapat keuntungan daripada tajuk mikro, ciptaan Soal Jawab asal dan Soal Jawab. 3. Menegaskan karya asli: Karya asal termasuk artikel, tajuk mikro, soalan, dsb., dan dikehendaki melebihi 300 patah perkataan. Sila ambil perhatian bahawa jika karya yang diciplak secara haram diterbitkan sebagai karya asli, mata kredit akan ditolak, malah sebarang keuntungan akan ditolak. 4. Ketegakan: Apabila menulis artikel dalam bidang profesional, anda tidak boleh menulis artikel merentas bidang sesuka hati Anda tidak akan mendapat cadangan yang sesuai, anda tidak akan dapat mencapai profesionalisme dan ketepatan kerja, dan sukar untuk menarik peminat. dan pembaca. 5. Aktiviti: aktiviti tinggi,

Masa yang diperlukan untuk mempelajari crawler Python berbeza dari orang ke orang dan bergantung pada faktor seperti keupayaan pembelajaran peribadi, kaedah pembelajaran, masa pembelajaran dan pengalaman. Mempelajari crawler Python bukan sekadar mempelajari teknologi itu sendiri, tetapi juga memerlukan kemahiran mengumpul maklumat yang baik, kemahiran menyelesaikan masalah dan kemahiran kerja berpasukan. Melalui pembelajaran dan latihan berterusan, anda akan berkembang secara beransur-ansur menjadi pembangun perangkak Python yang cemerlang.

Analisis masalah biasa dan penyelesaian untuk perangkak PHP Pengenalan: Dengan perkembangan pesat Internet, pemerolehan data rangkaian telah menjadi pautan penting dalam pelbagai bidang. Sebagai bahasa skrip yang digunakan secara meluas, PHP mempunyai keupayaan hebat dalam pemerolehan data Salah satu teknologi yang biasa digunakan ialah perangkak. Walau bagaimanapun, dalam proses membangunkan dan menggunakan perangkak PHP, kami sering menghadapi beberapa masalah. Artikel ini akan menganalisis dan memberikan penyelesaian kepada masalah ini dan memberikan contoh kod yang sepadan. 1. Perihalan masalah bahawa data halaman web sasaran tidak dapat dihuraikan dengan betul.

Amalan perangkak Java: Cara merangkak data halaman web dengan cekap Pengenalan: Dengan perkembangan pesat Internet, sejumlah besar data berharga disimpan dalam pelbagai halaman web. Untuk mendapatkan data ini, selalunya perlu untuk mengakses setiap halaman web secara manual dan mengekstrak maklumat satu demi satu, yang sudah pasti tugas yang membosankan dan memakan masa. Untuk menyelesaikan masalah ini, orang ramai telah membangunkan pelbagai alat crawler, antaranya Java crawler adalah salah satu yang paling biasa digunakan. Artikel ini akan membawa pembaca memahami cara menggunakan Java untuk menulis perangkak web yang cekap dan menunjukkan amalan melalui contoh kod tertentu. 1. Pangkal reptilia

Memandangkan pasaran filem terus berkembang dan berkembang, permintaan orang ramai terhadap filem juga semakin tinggi. Bagi penilaian filem, Pengkritik Filem Douban sentiasa menjadi pilihan yang lebih berwibawa dan popular. Kadangkala, kami juga perlu melakukan analisis dan pemprosesan tertentu pada ulasan filem Douban, yang memerlukan penggunaan teknologi perangkak untuk mendapatkan maklumat tentang ulasan filem Douban. Artikel ini akan memperkenalkan tutorial tentang cara menggunakan PHP untuk merangkak ulasan filem Douban untuk rujukan anda. Dapatkan alamat halaman filem Douban Sebelum merangkak ulasan filem Douban, anda perlu mendapatkan alamat halaman filem Douban. OK

Dengan perkembangan pesat teknologi Internet, aplikasi Web semakin digunakan dalam kerja dan kehidupan harian kita. Dalam proses pembangunan aplikasi web, merangkak data halaman web adalah tugas yang sangat penting. Walaupun terdapat banyak alat pengikis web di pasaran, alat ini tidak begitu cekap. Untuk meningkatkan kecekapan merangkak data halaman web, kami boleh menggunakan gabungan PHP dan Selenium. Pertama, kita perlu memahami apa itu PHP dan Selenium. PHP adalah kuat

Bilibili ialah tapak web video bertubi-tubi yang popular di China, dan ia juga merupakan harta karun, yang mengandungi semua jenis data. Antaranya, data benteng adalah sumber yang sangat berharga, begitu ramai penganalisis dan penyelidik data berharap untuk mendapatkan data ini. Dalam artikel ini, saya akan memperkenalkan penggunaan bahasa PHP untuk merangkak data benteng Bilibili. Kerja penyediaan Sebelum mula merangkak data benteng, kita perlu memasang rangka kerja perangkak PHP Symphony2. Anda boleh masuk melalui arahan berikut

Perkongsian kemahiran praktikal: Ketahui dengan pantas cara merangkak data halaman web dengan perangkak Java Pengenalan: Dalam era maklumat hari ini, kami berurusan dengan sejumlah besar data halaman web setiap hari, dan kebanyakan data ini mungkin betul-betul seperti yang kami perlukan. Untuk mendapatkan data ini dengan cepat, belajar menggunakan teknologi perangkak telah menjadi kemahiran yang diperlukan. Artikel ini akan berkongsi kaedah untuk mempelajari perangkak Java dengan pantas untuk merangkak data halaman web dan melampirkan contoh kod khusus untuk membantu pembaca menguasai kemahiran praktikal ini dengan cepat. 1. Kerja-kerja penyediaan Sebelum mula menulis crawler, kita perlu menyediakan perkara-perkara berikut
