@NO1nam

Почему блокирует ip через request?

Когда пытаюсь авторизоваться через Request Post блокирует мой IP
А если пробовать войти на тот же аккаунт только через Selenium все проходит отлично
Код на Request запросах
import requests
from bs4 import BeautifulSoup as bs4
import time
import random
import threading

accs = list(set(open("data.txt", encoding="utf-8").read().split('\n')))
def check():
    while accs:
        acc = random.choice(accs)
        accs.remove(acc)
        login = acc.split(":")[0]
        password = acc.split(":")[1]
        while True:
             try:
                ses = requests.Session()
                ses.headers={
                    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
                    "Accept-Encoding": "gzip, deflate",
                    "Accept-Languag": "ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7",
                    "Upgrade-Insecure-Requests": "1",
                    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36"
                    }
                page = ses.get("http://mrush.mobi/welcome").text
                soup = bs4(page, 'html.parser')
                data = {
                    "name": login,
                    "password": password
                    }
                styles = soup.find_all('style')
                for style in styles:
                    if not "none" in str(style):
                        if not "hidden" in str(style):
                            try:
                                str(style).split('margin-left: ')[1].split('px')[0]
                            except:
                                find = str(style).split('.')[1].split('{')[0]
                div = soup.find('div', {"class": find})
                id = str(div).split('" type="checkbox" value=""/>я не')[0].split('"')[-1]
                data[id] = ""
                login_req = ses.post("http://mrush.mobi/login", data=data)
                if not login_req.url.startswith("http://mrush.mobi/welcome?error="):
                    open("good.txt", "a", encoding="utf-8").write("{}:{}\n".format(login, password))
                    print("{}:{} - Good".format(login, password))
                    break
                else:
                    print("{}:{} - Bad".format(login, password))
                    break
             except Exception as e:
                print(e)
            
for i in range(1):
    thread = threading.Thread(target=check)
    thread.start()

Код на Selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
import time

def todo(driver, log, passw):
    
    url = 'http://mrush.mobi/'

    driver.get(url)
    #Авторизация
    print(log)
    driver.find_element_by_css_selector("input[name='name']").send_keys(log)
    driver.find_element_by_css_selector("input[name='password']").send_keys(passw)
    checkboxes = driver.find_elements(By.XPATH, '//input[@type="checkbox"]')
    for box in checkboxes:
        try:
            box.click()
        except Exception:
            pass
    driver.find_element_by_css_selector("input[type='submit']").click()
    #Выход из аккаунта
    logout = driver.get("http://mrush.mobi/logout");

driver = webdriver.Chrome('C:/Users/Admin/Desktop/mrush/chromedriver')
while (True):
    with open('data.txt', 'r', encoding="utf-8") as f:
        file = f.read().split('\n')
    for line in file:
        ln = line.split(':')
        todo(driver, ln[0], ln[1])
  • Вопрос задан
  • 78 просмотров
Решения вопроса 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Потому что на многих сайтах используется защита от парсеров.
Ответ написан
dimonchik2013
@dimonchik2013
это не маска, я всегда так выгляжу
там js подгружается с куками/сессией

распарси его и добавь в requests

но быстрее через JS браузер все же
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
IT HUNT Москва
от 180 000 до 250 000 ₽
Acme Crypto Corp Нижний Новгород
от 90 000 до 150 000 ₽
08 апр. 2020, в 22:52
5000 руб./за проект
08 апр. 2020, в 21:19
10000 руб./за проект
08 апр. 2020, в 20:18
35000 руб./за проект