正則獲取標題及鏈接-->改變page循環第二步-->將得到的標題及鏈接導入Excel爬蟲的第一步都是先手工操作" />

欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python3之微信文章爬蟲實例講解

系統 1620 0

前提:

python3.4

windows

作用:通過搜狗的微信搜索接口http://weixin.sogou.com/來搜索相關微信文章,并將標題及相關鏈接導入Excel表格中

說明:需xlsxwriter模塊,另程序編寫時間為2017/7/11,以免之后程序無法使用可能是網站做過相關改變,程序較為簡單,除去注釋40多行。

正題:

思路:打開初始Url --> 正則獲取標題及鏈接 --> 改變page循環第二步 --> 將得到的標題及鏈接導入Excel

爬蟲的第一步都是先手工操作一遍(閑話)

進入上面提到的網址,如輸入:“圖片識別”,搜索,網址變為“http://weixin.sogou.com/weixin?type=2&query=%E5%9B%BE%E7%89%87%E8%AF%86%E5%88%AB&ie=utf8&s_from=input&_sug_=n&_sug_type_=1&w=01015002&oq=&ri=4&sourceid=sugg&sut=0&sst0=1499778531195&lkt=0%2C0%2C0&p=40040108”標紅為重要參數,type=1時是搜索公眾號,暫且不管,query=‘搜索關鍵詞',關鍵詞已經被編碼,還有一個隱藏參數page=1

當你跳到第二頁時可以看到“http://weixin.sogou.com/weixin?oq=&query=%E5%9B%BE%E7%89%87%E8%AF%86%E5%88%AB&_sug_type_=1&sut=0&lkt=0%2C0%2C0&s_from=input&ri=4&_sug_=n&type=2&sst0=1499778531195&page=2&ie=utf8&p=40040108&dp=1&w=01015002&dr=1”

好了,url可以得到了

url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)

search是要搜索的關鍵詞,用quote()編碼即可插入

            
search = urllib.request.quote(search)
          

page是用來循環的

            
for page in range(1,pagenum+1):
 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)
          

完整的url已經得到了,接下來訪問url,獲得其中的數據(創建opener對象,添加header())

            
import urllib.request
 header = ('User-Agent','Mozilla/5.0')
 opener = urllib.request.build_opener()
 opener.addheaders = [header]
 urllib.request.install_opener(opener)
 data = urllib.request.urlopen(url).read().decode()
          

得到頁面內容,采用正則表達獲取相關數據

            
 import re
  finddata = re.compile('
            
              (.*?)
            
            ').findall(data)
  #finddata = [('',''),('','')]
          

通過正則獲取的數據中存在干擾項(鏈接:‘amp;')和無關項(標題:' <...><....> '),用replace()解決

            
 title = title.replace('
            
                            ','')
 title = title.replace('
                          
            ','')
 link = link.replace('amp;','')
          

將處理后的標題和鏈接保存在列表中

            
 title_link.append(link)
 title_link.append(title)
          

如此搜索的標題和鏈接都得到了,接下來導入Excel

先創建Excel

            
 import xlsxwriter
 workbook = xlsxwriter.Workbook(search+'.xlsx')
 worksheet = workbook.add_worksheet('微信')
          

將title_link中的數據導入Excel

            
 for i in range(0,len(title_link),2):
  worksheet.write('A'+str(i+1),title_link[i+1])
  worksheet.write('C'+str(i+1),title_link[i])
 workbook.close()
          

完整代碼:

            
'''
python3.4 + windows
羽凡-2017/7/11-
用于搜索微信文章,保存標題及鏈接至Excel中
每個頁面10秒延遲,防止被限制
import urllib.request,xlsxwriter,re,time
'''
import urllib.request
search = str(input("搜索微信文章:"))
pagenum = int(input('搜索頁數:'))
import xlsxwriter
workbook = xlsxwriter.Workbook(search+'.xlsx')
search = urllib.request.quote(search)
title_link = []
for page in range(1,pagenum+1):
 url = 'http://weixin.sogou.com/weixin?type=2&query='+search+'&page='+str(page)
 import urllib.request
 header = ('User-Agent','Mozilla/5.0')
 opener = urllib.request.build_opener()
 opener.addheaders = [header]
 urllib.request.install_opener(opener)
 data = urllib.request.urlopen(url).read().decode()
 import re
 finddata = re.compile('
            
              (.*?)
            
            ').findall(data)
 #finddata = [('',''),('','')]
 for i in range(len(finddata)):
  title = finddata[i][1]
  title = title.replace('
            
                            ','')
  title = title.replace('
                          
            ','')
  try:
   #標題中可能存在引號
   title = title.replace('“','"')
   title = title.replace('”','"')
  except:
   pass
  link = finddata[i][0]
  link = link.replace('amp;','')
  title_link.append(link)
  title_link.append(title)
 print('第'+str(page)+'頁')
 import time
 time.sleep(10)
worksheet = workbook.add_worksheet('微信')
worksheet.set_column('A:A',70)
worksheet.set_column('C:C',100)
bold = workbook.add_format({'bold':True})
worksheet.write('A1','標題',bold)
worksheet.write('C1','鏈接',bold)
for i in range(0,len(title_link),2):
 worksheet.write('A'+str(i+1),title_link[i+1])
 worksheet.write('C'+str(i+1),title_link[i])
workbook.close()
print('導入Excel完畢!')
          

以上這篇python3之微信文章爬蟲實例講解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 色人阁久久 | 亚洲国产精品a一区 | 色午夜日本 | 欧美高清在线视频一区二区 | 天天综合久久 | 欧美日韩中文 | 日本www视频在线观看 | 日本无码少妇波多野结衣 | 欧美不卡视频 | 中文字幕在线免费看 | 伊人蕉久影院 | 激情亚洲视频 | 欧美大片网站 | 男女真实无遮挡xx00动态图120秒 | 日韩三级一区 | 成年免费大片黄在线观看岛国 | 日韩在线免费视频 | 久久国产精品视频一区 | 国产精品国产三级国产aⅴ入口 | 成人精品在线观看 | 一区二区三区四区在线观看视频 | jizzjizz视频| 成人片网址 | 久久久久久国产精品久久 | 奇米第四狠狠777高清秒播 | 国产精品尤物在线 | 国产一区二区三区免费观看 | 久久久日韩精品一区二区 | 波多野结衣在线免费 | 操操网| 青娱乐精品在线 | 91亚洲国产 | 国产日韩一区 | 国产成人免费视频网站视频社区 | 亚洲美女在线播放 | 精品在线一区二区 | 久久se精品一区精品二区 | 久久久国产99久久国产一 | 小明www永久在线看 国产美女一区二区三区 | 久久久久无码国产精品一区 | 91精品国产综合久久婷婷香蕉 |