スクレイピングする際このコードを使用しようと考えているのですが、サーバーの負担などを考慮してスクレイピングコードとして何点でしょうか?
改善点をお教えいただけるとありがたいです。
動作環境は GoogleColaboratoryです。
Python
module_dir = '/content/drive/MyDrive/module' data_dir = '/content/drive/MyDrive/input/' import os import sys sys.path.append(module_dir) from bs4 import BeautifulSoup import re import requests import time import numpy as np from datetime import datetime as dt from typing_extensions import Protocol import json import random ######################################################################################### FILE_PATH = '/content/drive/MyDrive/module/ip_list.json' USER_AGENT_list = [ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36" ,"Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko; googleweblight) Chrome/38.0.1025.166 Mobile Safari/535.19" ,"Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148" ] json_open = open(FILE_PATH, 'r') proxy_list = json.load(json_open) UA = USER_AGENT_list[random.randrange(0, len(USER_AGENT_list), 1)] proxy_info = random.choice(proxy_list) ip = proxy_info['ip'] port = proxy_info['port'] protocol = proxy_info['protocol'] proxy = protocol + '://' + str(ip) + ':' + port proxies = { 'http':proxy, 'https':proxy} headers = {'User-Agent' : UA} #例のためヤフージャパンをリンクに使用しています url = https://www.yahoo.co.jp site = requests.get(url, proxy, headers=headers, timeout=3.5) time.sleep(random.uniform(0.1**ボールドテキスト**,0.6)) data = BeautifulSoup(site.text,'html.parser')
まだ回答がついていません
会員登録して回答してみよう