爬虫類基礎入門(一)

2751 ワード

爬虫類基礎入門(一)
本文は最も基本的な爬虫類を紹介して、まず爬虫類の概念を説明して、具体的な実現のステップと1つの最も簡単なPython実現の爬虫類の例を挙げます.
ネット爬虫類とは
私の理解では、ネットワーク爬虫類はプログラミングを実現し、Webページの情報を自動化します.ネット爬虫類は、ネットデータ収集の一部であり、多くの人が興味を持っている一部でもある.
ネットワーク爬虫類を実現するには、自動化プログラムを書いてサーバにデータを要求し(通常はHTMLフォームや他のWebファイル)、データを解析し、必要な情報を抽出するのが最も一般的です.
ネットワーク爬虫類の目的で、データ分析や分類を行う.
最も簡単な爬虫類の例
本節ではPythonが最も簡単な爬虫類の例を実現します.もちろん,ここでは爬虫類の実戦時の手順や考え方を説明するだけで,本例はかなり簡単である.
良い爬虫類を書くには、先端の知識が必要です.結局、ページは先端言語で書かれています.また,現在では万能な爬虫プログラムはないため,一般に爬虫類は特定のページに基づいて作成し,デバッグを継続する必要がある.
簡単な爬虫類の例:実現する必要がある機能:登るhttp://example.com/中間部分の文字を保存し、使用する文字を保存します.
Pythonでは2つの方法で実現され、1は文字列が持つ方法でマッチングする.2は正則マッチングを使用します.
# -*- coding:utf-8 -*-

import urllib2
import re

#    :    
website = urllib2.urlopen(r"http://www.example.com/")

#    :       
page = website.read().decode('utf-8') #  utf-8  ,    gbk

#print(page)

#    :      
# find -             
start_p = page.find('

'

) + 3 #

end_p = page.find('') msg = re.findall("

(.*?)

"
,page,re.S) # .*? , # ,re.S
#print(page[start_p:end_p]) print(msg[0]) # fp = open('msg.txt','w') fp.write(msg[0]) #print(fp.read()) fp.close()

実行結果:
This domain is established to be used for illustrative examples in documents. You may use this
    domain in examples without prior coordination or asking for permission.

爬取に成功し、保存されます.txtファイル.
まとめ
実は、爬虫類のステップと基本的な思想は難しくなくて、難点は実際のホームページの分析に対して、高級爬虫類を書くにはやはり多くのネットと先端の知識が必要で、本人はまだゆっくり勉強して、多くの試みを行って、後続も更に自分の爬虫類のいくつかの感じを分かち合います.