如何在python中绕过DDOS攻击检查特定站点?

时间:2018-03-25 06:57:58

标签: python screen-scraping

我正在试图抓住这个网站,但是从网站获取数据时,它对我进行了ddos检查,它检查了5秒,然后重定向到相同的网址,但页面打开(在普通浏览器上),但在python我试图请求相同的东西它只是返回ddos检查页面。有什么方法可以绕过这个或任何解决方法吗? 这是我的代码: 谢谢:))

import requests
from urllib2 import build_opener
import time
import json

url = 'https://www.masterani.me/api/anime/63-naruto-shippuuden/detailed'
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
       'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
       'Accept-Encoding': 'none',
       'Accept-Language': 'en-US,en;q=0.8',
       'Connection': 'keep-alive'}
page = requests.get(url, headers = headers)
print page.text

2 个答案:

答案 0 :(得分:1)

使用无头浏览器可以正常工作。使用PhantomJS和Selenium webdriver来抓取这些网站,或使用AJAX加载内容的网站。

我发现这些链接很有用。

https://www.guru99.com/selenium-python.html

https://vocuzi.in/blog/preventing-website-web-scrapers/

答案 1 :(得分:0)

在检查请求的有效性时,反ddos解决方案通常会考虑各种参数。例如,您的地理位置可能是一个重要因素:当尝试重现您的问题时,我得到200响应,这意味着反ddos决定允许我的代码访问该网站。 我建议使用VPN /代理服务,例如这个one,或者,如果这是一个用于生产的系统,我会建议付费服务,因为这些服务更可靠。请注意,某些服务足够强大,可以阻止许多代理IP