Ich schrieb mit der Absicht, mit Python zu kratzen, Wenn für einen bestimmten Zeitraum von derselben IP-Adresse aus darauf zugegriffen wird, wird der Zugriff für eine Weile verweigert. Wenn eine Site wie diese angezeigt wird, können Sie möglicherweise nicht gut kratzen Ich werde meine IP-Adresse fälschen und sie kratzen.
Da es sich jedoch nur für macOS um eine Bestätigung des Betriebs handelt, unterscheidet sich die Methode meiner Meinung nach insbesondere für Windows geringfügig.
Verkleidung macht übrigens einen schlechten Eindruck, aber das bedeutet nicht, dass es schlecht ist. Berücksichtigen Sie beim Scraping natürlich die Ausführungszeit des Programms, um den Zielserver nicht zu belasten.
Bitte installieren Sie die 3er Serie. (Ich denke, dass es mit 2 Systemen funktionieren wird, aber der Betrieb wurde nicht bestätigt)
Eine Bibliothek, die eine externe URL (API) aus Python aufruft. Es ist wie Ajax in Javascript.
Installieren Sie mit dem folgenden Befehl
pip install requests
Es ist eine Bibliothek, mit der Sie den Inhalt mit detaillierteren Bedingungen aufnehmen können, nachdem Sie den Text auf Anfrage erhalten haben.
pip install beautifulsoup4
tor
Es ist ein Tor, der anonym kommunizieren kann. Verwenden Sie dies für IP-Spoofing. https://www.torproject.org/
Installieren Sie mit dem folgenden Befehl.
brew install tor
Geben Sie nach Abschluss der Installation den folgenden Befehl ein
tor
Verschiedene Prozesse werden gestartet. Es ist abgeschlossen, wenn die folgenden Bedingungen erfüllt sind.
Jan 28 00:29:59.000 [notice] Bootstrapped 100% (done): Done
Dann starten Sie tor.
brew services start tor
Es ist in Ordnung, wenn Sie ** erfolgreich ** Englisch erhalten.
Lass uns Python schreiben. Dieses Mal habe ich auf die URL zugegriffen, um meine eigene IP-Adresse zu erhalten, und mir das Ergebnis angesehen.
Sie können Ihre eigene IP-Adresse auf der folgenden Site überprüfen. https://grupo.jp/myip/
test.py
#UTF-8
import requests
from bs4 import BeautifulSoup
get = requests.get('http://httpbin.org/ip').text
soup = BeautifulSoup(get, 'html.parser')
ip = soup.find('table', class_='pubwaku')
print(get)
Zuallererst normale Scraping-Ausführung
python test.py
Die folgenden Ergebnisse werden zurückgegeben. Viele HTML-Daten werden zurückgegeben, suchen Sie jedoch nach dem Speicherort, an dem die IP-Adresse und der Remote-Host wie unten gezeigt geschrieben sind.
<tr><th>IP Adresse</th><td style="font-size:18px;font-weight:bold;">153.999.999.99</td><td class="commentary">現在、接続されるIP Adresse</td></tr>
<tr><th>Remote-Host</th><td>p554999-************.*****.ne.jp</td><td class="commentary">Mit der IP-Adresse verknüpfter Hostname</td></tr>
** IP Adresse ** 153.999.999.99
** Remote-Host ** p554999-*******..ne.jp
test.py
#UTF-8
import requests
from bs4 import BeautifulSoup
get = requests.get('https://grupo.jp/myip/',
proxies=dict(http='socks5://127.0.0.1:9050',
https='socks5://127.0.0.1:9050')).text
soup = BeautifulSoup(get, 'html.parser')
ip = soup.find('table', class_='pubwaku')
print(ip)
Proxy-Teil in Anfragen hinzugefügt.
Lauf
python test.py
Mal sehen, das Ergebnis. Suchen Sie erneut nach dem Speicherort, an dem die IP und der Remote-Host geschrieben sind.
Die folgenden Ergebnisse werden zurückgegeben. Viele HTML-Daten werden zurückgegeben, suchen Sie jedoch nach dem Speicherort, an dem die IP-Adresse und der Remote-Host wie unten gezeigt geschrieben sind.
<tr><th>IP Adresse</th><td style="font-size:18px;font-weight:bold;">82.223.99.999</td><td class="commentary">現在、接続されるIP Adresse</td></tr>
<tr><th>Remote-Host</th><td>tornode3.*******.net</td><td class="commentary">Mit der IP-Adresse verknüpfter Hostname</td></tr>
** IP Adresse ** 82.223.99.999
** Remote-Host ** tornode3.*******.net
Wie Sie sehen, ist nicht nur die IP-Adresse, sondern auch der Remote-Host geeignet.
Starten Sie neu
brew services restart tor
Führen Sie test.py aus
python test.py
Überprüfen Sie das Ergebnis.
<tr><th>IP Adresse</th><td style="font-size:18px;font-weight:bold;">109.70.999.99</td><td class="commentary">現在、接続されるIP Adresse</td></tr>
<tr><th>Remote-Host</th><td>tor-exit-anonymizer.********.net</td><td class="commentary">Mit der IP-Adresse verknüpfter Hostname</td></tr>
** IP Adresse ** 109.70.999.99
** Remote-Host ** tor-exit-anonymizer.********.net
Was denken Sie. Wie oben erwähnt, kann die Fälschung der IP-Adresse leicht durchgeführt werden. Dann ist es nicht so, wenn die IP-Prüfung für DoS-Angriffe nutzlos ist. Um die IP-Adresse zu ändern, müssen Sie tor neu starten, was einige Zeit dauert. Daher ist es schwierig, hunderte Male pro Sekunde mit unterschiedlichen IP-Adressen anzugreifen. Daher ist ein Programm, das eine bestimmte Anzahl von Zugriffen von derselben IP-Adresse vorübergehend ablehnt, bis zu einem gewissen Grad wirksam. ** Es ist jedoch nicht wirksam gegen DDos-Angriffe **
Verschwenden Sie keinen Zugang und kein Unheil mehr beim Schaben.
Recommended Posts