指定されたファイルは、以下のURLが含まれているかどうかを決定します

「」「
ローカルリストのURLを読み取るために1
2.個別アクセスURL
3.指定したファイルがURLの下にある含まれているかどうかを判断し
、それがない場合は、、含まれている場合4. URLの除去をローカル書き込みURLを
「」」
インポート要求が
インポートマルチプロセッシング


クラスCheck_file(オブジェクト):
DEF __init __(自己):
self.headers = {
'User--エージェント':「Mozillaの/ 5.0(Macintosh版、インテルのMac OS X-10_13_1)のAppleWebKit / 537.36(KHTML、ヤモリなど)クローム/サファリ63.0.3239.84 / 537.36」は、
}

#は、URLのローカルリストを読み出して返す
DEFのread_local_file(セルフ、Q):
'UTF-8'を開くと( '../ URL / url.txt'、 'R&LT'、エンコーディング=を)F AS:
url_data f.readlines =()
url_dataでのURLのために:
Q.PUT(URL)
を印刷( "読み出したデータを終えました")

#逐个访问URL、并判断数据是否存在
DEF request_url(自己、Q):
suffixs = [ 'index.phpを']
真一方
url_data = q.get()
url_dataにおけるURLの:
:url.startswith(「HTTPS場合// '):
url_one =のURL
のelifがurl.startswithない('のhttp:// '):
url_one = 'のhttp://' + url.strip()+ '/'
suffixsでサフィックスの:
re_url = url_one.strip ()+接尾語の
試み:
再= requests.get(URL = re_url、ヘッダ= self.headers、タイムアウト= 1)
の場合re.status_codeの== 200とre.content.decodeに'を定義'():
印刷( '[*]' + '\ T' + re_url)
オープン( '../ファイル/ file.txtを'、 'A'、エンコード= 'UTF-8')とFとして:
f.write(re_url + '\ n'の)
電子などの例外を除いて:
印刷(e)の
場合q.empty():
ブレーク

#方法集合
デフメイン(自己):
Q = multiprocessing.Queue()
P1 = multiprocessing.Process(対象= self.read_local_file、引数=(Q))
P2 = multiprocessing.Process(目標= self.request_url、引数=(Q))

p1.start()
p2.start()


もし__name__ == '__main__':
C = Check_file()
の範囲内のiについて(10):
c.main()

おすすめ

転載: www.cnblogs.com/victorstudy/p/11425859.html