爬虫小プログラム-王者栄耀全皮膚を這い出す
2579 ワード
学習理由:
爬虫類は面白い技術で、プログラムの魅力を感じさせ、視覚的な衝撃感と達成感をもたらし、プログラミングに対する学習興味を大きく高めることができます.
一、爬虫類コード:
プロセス:目標を明確にして、私は王者に登って皮膚を輝かせます. 分析過程、ウェブサイトに入ってバッグをつかんで皮膚のピクチャーの記憶位置を理解します; 分解ステップは、皮膚画像の記憶規則を探し出し、実現ステップをいくつかに分解する. は徐々に運行し、必要なパラメータを取得し、構想を完備する.
注意事項:タスクに時間がかかります.5~10分ほどかかり、完成を待つだけです.原因:この爬虫類コードの比較基礎; 具体的な流れは注釈を見て、構想は自分で学ぶ必要があり、ネット上には多くの資源があり、プログラミングの思考を把握することを重視している. コードについて: 同級フォルダpicを新設し、記憶しやすい(コードファイル名を自分で変更できる). に異常捕獲が追加され、コード終了後もプログラムが皮膚名を取得する問題が解決された.
ファイルフレーム:
コード:
二、最終結果:
通常のコードはデータを這い出す効率が低く、データが多くなると待ち時間が大幅に長くなり、データを這い出す時間をどのように短縮するか、爬虫類の効率を高める方法を知ることができます.
クリックジャンプ:爬虫類の効率を高める方法
爬虫類は面白い技術で、プログラムの魅力を感じさせ、視覚的な衝撃感と達成感をもたらし、プログラミングに対する学習興味を大きく高めることができます.
一、爬虫類コード:
プロセス:
注意事項:
ファイルフレーム:
# :
spider( )
# :
--pic( )
--01_ .py
コード:
# 1.
import requests
# 2. json
url = 'http://pvp.qq.com/web201605/js/herolist.json'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}
response = requests.get(url, headers=headers)
json_list= response.json()
# print(len(json_list)) # :95
# print(json_list) # , json_list
# [{'ename': 105, 'cname': ' ', 'title': ' ', 'new_type': 0, 'hero_type': 3, 'skin_name': ' | '}, {...}, ...]
try:
# 3. json ,
for m in range(len(json_list)):
#
hero_num = json_list[m]['ename']
#
hero_name = json_list[m]['cname']
#
skin_name = json_list[m]['skin_name'].split('|')
#
skin_count = len(skin_name)
print(' :',hero_name,' :',skin_count) #
#
for i in range(1, skin_count + 1):
# ,
url = 'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/' #
url_pic = url + str(hero_num) + '/' + str(hero_num) + '-bigskin-' + str(i) + '.jpg'
#
picture = requests.get(url_pic).content
# print(picture) #
# : pic/ - .jpg ( pic )
with open('pic/'+ hero_name + ' - ' + skin_name[i - 1] + '.jpg', 'wb') as f:
f.write(picture)
except KeyError as e:
# :
print(' !')
二、最終結果:
通常のコードはデータを這い出す効率が低く、データが多くなると待ち時間が大幅に長くなり、データを這い出す時間をどのように短縮するか、爬虫類の効率を高める方法を知ることができます.
クリックジャンプ:爬虫類の効率を高める方法