昨日仕事を終えた後、Web ページ上の内容をキャプチャするクローラーを作成することを突然思いつきました。 1 時間かけて Python の基本的な構文を簡単に学習し、インターネット上の例を参照してクローラーを作成しました。 (推奨される学習: Python ビデオ チュートリアル )
Python データを下に移動し、ローカル (通常はファイルまたはデータベース) に保存しますが、ファイル形式はそれよりも単純です。クローラーを作成するときは、データをファイル形式で保存できます。
#coding=utf-8 import urllib.request import re import os ''' Urllib 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据 urlopen 方法用来打开一个url read方法 用于读取Url上的数据 ''' def getHtml(url): page = urllib.request.urlopen(url); html = page.read(); return html; def getImg(html): imglist = re.findall('img src="(http.*?)"',html) return imglist html = getHtml("https://www.zhihu.com/question/34378366").decode("utf-8"); imagesUrl = getImg(html); if os.path.exists("D:/imags") == False: os.mkdir("D:/imags"); count = 0; for url in imagesUrl: print(url) if(url.find('.') != -1): name = url[url.find('.',len(url) - 5):]; bytes = urllib.request.urlopen(url); f = open("D:/imags/"+str(count)+name, 'wb'); f.write(bytes.read()); f.flush(); f.close(); count+=1;
テスト後も、基本的な機能は引き続き実現できます。私は正規表現にあまり詳しくないので、最も時間がかかるのは正規のマッチングです。ということで、やはり時間がかかりました。
注: 上記のプログラムは Python 3.5 に基づいています。 python3 と python2 にはいくつかの違いがあります。初めて基礎文法を勉強し始めたとき、いくつかの落とし穴にはまりました。
以上がPython データはどこにクロールされ、保存されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。