正則獲取標題及鏈接-->改變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條評論
主站蜘蛛池模板: 国产超91| a天堂在线| 亚洲一区在线日韩在线深爱 | 在线观看国产wwwa级羞羞视频 | 精品黄网| 久久se精品一区精品二区 | 新视觉yy6080午夜毛片 | 色偷偷综合 | 国产男女免费完整版视频 | 国产精品久久久天天影视香蕉 | 色橹橹欧美在线观看视频高清免费 | 久久婷婷是五月综合色狠狠 | 亚洲最大在线 | 韩国三级午夜理伦三级三 | 国产亚洲欧美另类第一页 | 91免费视频 | 亚洲日韩中文字幕一区 | 小明www永久在线看 国产美女一区二区三区 | 欧美va亚洲 | 日韩欧美精品在线 | 成人福利小视频 | 日本污网站 | 国产精品在线观看 | 午夜宫电影 | 精品欧美一区二区三区久久久 | 欧美无玛 | 亚洲免费看片 | 国产高清一区二区 | 日韩av在线中文字幕 | 久草新| 亚洲国产一区二区三区四区 | 奇米影视亚洲四色8888 | 久久一日本道色综合久久 | 毛片精品 | 丁香婷婷六月天 | 久久免费精品视频在线观看 | 亚洲www.| 一区二区三区视频免费观看 | av资源中文在线 | 午夜18禁A片兔费看 四虎影视在线看免费完整版 | 久久久国产精品 |