Оставайтесь в системе с помощью MechanicalSoup - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь создать парсер для получения URL-адресов со страницы. Скребок отлично работает, когда я нахожусь на обычном веб-сайте, но я хочу войти в систему, чтобы использовать функции фильтра на веб-сайте. Я использую MechanicalSoup для входа в систему, и вход прошел успешно, но когда я перехожу на страницу с помощью запросов, я больше не вхожу в систему. Пожалуйста, помогите!

Вот мой код:

from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
import mechanicalsoup

URL = "https://www.morphmarket.com/us/search?q=&sex=&maturity=0&cat=31&min_genes=0&max_genes=9&traits=&neg_traits=&min_price=0&max_price=1000000&cur=USD&sort=nfs&epoch=2&store=&country=&export=&layout=grid&page=1"
LOGIN = "_______"
PASSWORD = "_______"

browser = mechanicalsoup.StatefulBrowser()
browser.open(URL)
browser.select_form('form[action="/accounts/login/"]')
browser.get_current_form().print_summary()
browser["login"] = LOGIN
browser["password"] = PASSWORD
response = browser.submit_selected()
print(browser.get_url())

snake_urls = []
for i in range(1, 3):
    number = str(i)
    my_url = 'https://www.morphmarket.com/us/search?q=&sex=&maturity=0&cat=31&min_genes=0&max_genes=9&traits=&neg_traits=&min_price=0&max_price=1000000&cur=USD&sort=nfs&epoch=2&store=&country=&export=&layout=grid&page=' + number
    uClient = uReq(my_url)
    page_html = uClient.read()
    uClient.close()
    page_soup = soup(page_html, "html.parser")
    containers = page_soup.findAll("div",{"class":"col-md-3 col-sm-4 col-ms-4 col-xs-6 item-col move-up"})

а затем я go продолжаю соскабливать ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...