最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)可獲取網(wǎng)易頁面所有文本信息的網(wǎng)易網(wǎng)絡(luò)爬蟲功能示例

 更新時(shí)間:2018年01月15日 11:00:36   作者:壞蛋是我  
這篇文章主要介紹了Python實(shí)現(xiàn)可獲取網(wǎng)易頁面所有文本信息的網(wǎng)易網(wǎng)絡(luò)爬蟲功能,涉及Python針對網(wǎng)頁的獲取、字符串正則判定等相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python實(shí)現(xiàn)可獲取網(wǎng)易頁面所有文本信息的網(wǎng)易網(wǎng)絡(luò)爬蟲功能。分享給大家供大家參考,具體如下:

#coding=utf-8
#---------------------------------------
#  程序:網(wǎng)易爬蟲
#  作者:ewang
#  日期:2016-7-6
#  語言:Python 2.7
#  功能:獲取網(wǎng)易頁面中的文本信息并保存到TXT文件中。
#---------------------------------------
import string
import urllib2
import re
import os
class WangYi_Spider:
  #申明相關(guān)屬性
  def __init__(self):
    #給wangyiUrl屬性賦值
    self.wangyiUrl="http://www.163.com/"
    #用來保存頁面中文字信息
    self.pageinfor=[]
    print u'已經(jīng)啟動網(wǎng)易爬蟲,爬爬...'
  #初始化加載頁面并將其轉(zhuǎn)碼存儲
  def wangyi(self):
    #讀取頁面的原始信息并將其從gbk轉(zhuǎn)碼
    Page=urllib2.urlopen(self.wangyiUrl).read().decode('gbk')
    #獲取頁面標(biāo)題
    title=self.find_title(Page)
    print u'網(wǎng)頁名稱:'+title
    #獲取頁面中文本信息
    self.save_infor(title)
  #查找頁面標(biāo)題
  def find_title(self,page):
    #匹配<title>xxxx</title>
    myTitle=re.search(r'<title>(.*?)</title>',page,re.S)
    #初始化標(biāo)題名為暫無標(biāo)題
    title=u'暫無標(biāo)題'
    #如果標(biāo)題存在把標(biāo)題賦值給title
    if myTitle:
      #(.*?)這稱作一個(gè)group,組是從1開始
      title=myTitle.group(1)
    else:
      print u'爬蟲報(bào)告:無法加載網(wǎng)頁標(biāo)題...'
    return title
  #保存頁面信息
  def save_infor(self,title):
    #加載頁面文本信息到數(shù)組中
    self.get_infor()
    #創(chuàng)建并打開本地文件
    f=open(title+'.txt','w+')
    #把獲取的頁面信息寫入文件中
    f.writelines(self.pageinfor)
    #關(guān)閉打開的文件
    f.close()
    print u'爬蟲報(bào)告:文件'+title+'.txt'+u'已經(jīng)下載:'+os.getcwd()
    print u'按任意鍵退出...'
    raw_input()
  #獲取頁面源碼并將其存儲到數(shù)組中
  def get_infor(self):
    #獲取頁面中的源碼
    page=urllib2.urlopen(self.wangyiUrl).read()
    #把頁面中的內(nèi)容gbk解碼然后獲取頁面中所有的文本信息
    self.deal_infor(page.decode('gbk'))
  #從頁面代碼中獲取所需文信息
  def deal_infor(self,page):
    #獲取<em >XXX</em>的文本信息XXX
    emTagItems=re.findall("<em.*?>(\W+?)</em>",page,re.S)
    #獲取<span>XXXX</a>的文本信息XXXX
    spanTagItems=re.findall("<span>(\W+?)</span>",page,re.S)
    #獲取<a .*>XXXX</a>的文本信息XXXX
    aTagItems=re.findall("<a.*?>(\W+?)</a>",page,re.S)
    #把em tag中獲取的文本信息添加到數(shù)組pageinfor中
    for emItem in emTagItems:
      #對獲取的文本信息用gbk進(jìn)行編碼
      self.pageinfor.append(emItem.encode('gbk')+'\n')
    #把span tag中獲取的文本信息添加到數(shù)組pageinfor中
    for spanItem in spanTagItems:
      #對獲取的文本信息用gbk進(jìn)行編碼
      self.pageinfor.append(spanItem.encode('gbk')+'\n')
    #把a(bǔ) tag中獲取的文本信息添加到數(shù)組pageinfor中
    for aItem in aTagItems:
      #對獲取的文本信息用gbk進(jìn)行編碼
      self.pageinfor.append(aItem.encode('gbk')+'\n')
#------------程序入口處----------------
print u"""#---------------------------------------
#  程序:網(wǎng)易爬蟲
#  作者:ewang
#  日期:2016-7-6
#  語言:Python 2.7
#  功能:獲取網(wǎng)易頁面中的文本信息并保存到TXT文件中
#--------------------------------------------------
"""
wangyiSpider=WangYi_Spider()
wangyiSpider.wangyi()

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python正則表達(dá)式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • OpenCV圖像處理之七種常用圖像幾何變換

    OpenCV圖像處理之七種常用圖像幾何變換

    這篇文章主要介紹了OpenCV圖像處理中常用的幾個(gè)圖像幾何變換:裁剪、放大、縮小、平移、錯(cuò)切、鏡像、旋轉(zhuǎn)、透視等。文中示例代碼非常詳細(xì),需要的朋友可以參考一下
    2021-12-12
  • python爬蟲-模擬微博登錄功能

    python爬蟲-模擬微博登錄功能

    這篇文章主要介紹了python爬蟲-模擬微博登錄功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Django+simpleui實(shí)現(xiàn)文件上傳預(yù)覽功能(詳細(xì)過程)

    Django+simpleui實(shí)現(xiàn)文件上傳預(yù)覽功能(詳細(xì)過程)

    該文章詳細(xì)介紹了如何在Django框架中實(shí)現(xiàn)文件上傳、預(yù)覽和下載功能,并使用SimpleUI美化Django后臺界面,通過創(chuàng)建模型、表單、視圖和配置URL,實(shí)現(xiàn)了文件的存儲和管理,同時(shí),文章還提到了配置媒體文件、創(chuàng)建模板以及在生產(chǎn)環(huán)境中的部署注意事項(xiàng),感興趣的朋友一起看看吧
    2025-02-02
  • python使用Random隨機(jī)生成列表的方法實(shí)例

    python使用Random隨機(jī)生成列表的方法實(shí)例

    在日常的生活工作和系統(tǒng)游戲等設(shè)計(jì)和制作時(shí),經(jīng)常會碰到產(chǎn)生隨機(jī)數(shù),用來解決問題,下面這篇文章主要給大家介紹了關(guān)于python使用Random隨機(jī)生成列表的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • python安裝包出現(xiàn)Retrying?(Retry(total=4,?connect=None,?read=None,?redirect=None,?status=None))問題解決

    python安裝包出現(xiàn)Retrying?(Retry(total=4,?connect=None,?read=No

    這篇文章主要給大家介紹了關(guān)于python安裝包出現(xiàn)Retrying?(Retry(total=4,?connect=None,?read=None,?redirect=None,?status=None))問題的解決方法,需要的朋友可以參考下
    2022-09-09
  • 淺談利用numpy對矩陣進(jìn)行歸一化處理的方法

    淺談利用numpy對矩陣進(jìn)行歸一化處理的方法

    今天小編就為大家分享一篇淺談利用numpy對矩陣進(jìn)行歸一化處理的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python Django2 model 查詢介紹(條件、范圍、模糊查詢)

    Python Django2 model 查詢介紹(條件、范圍、模糊查詢)

    這篇文章主要介紹了Python Django2 model 查詢介紹(條件、范圍、模糊查詢),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 解決csv.writer寫入文件有多余的空行問題

    解決csv.writer寫入文件有多余的空行問題

    今天小編就為大家分享一篇解決csv.writer寫入文件有多余的空行問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python asyncio庫深度解析(含完整代碼和注釋)

    Python asyncio庫深度解析(含完整代碼和注釋)

    這篇文章主要介紹了Python asyncio庫的深度解析,以下是對 Python asyncio 庫的深度解析,涵蓋實(shí)現(xiàn)原理、工作機(jī)制、同步與異步的差異,以及多領(lǐng)域應(yīng)用示例(含完整代碼和注釋),需要的朋友可以參考下
    2025-04-04
  • Python機(jī)器學(xué)習(xí)之scikit-learn庫中KNN算法的封裝與使用方法

    Python機(jī)器學(xué)習(xí)之scikit-learn庫中KNN算法的封裝與使用方法

    這篇文章主要介紹了Python機(jī)器學(xué)習(xí)之scikit-learn庫中KNN算法的封裝與使用方法,結(jié)合實(shí)例形式分析了scikit-learn庫中KNN算法的相關(guān)調(diào)用與使用技巧,需要的朋友可以參考下
    2018-12-12

最新評論

溧阳市| 西城区| 汶上县| 乌苏市| 云南省| 无锡市| 彭水| 嘉义县| 日照市| 广平县| 梅州市| 米泉市| 舒兰市| 即墨市| 甘孜县| 龙里县| 武宁县| 故城县| 靖江市| 丰都县| 奎屯市| 双桥区| 永德县| 新野县| 新晃| 东阳市| 大埔区| 育儿| 北流市| 亳州市| 沐川县| 奉贤区| 广水市| 图们市| 涪陵区| 临洮县| 金坛市| 化德县| 新闻| 济南市| 弥渡县|