Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 29, 2019 11:08:46

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

пожста помогите грамотно составить request.
на ветке для новичков никто не отозвался.
благодарю.
.
Вебсайт по этому адресу: http://www.eatonpowersource.com/cross-reference/

в окошко нужно ввести параметр для поиска

.
.
сам вебсайт после нажатия кнопки выглядит так
.


когда в мозилле смотрю анализ окошка ввода, там есть два варианта
Метод: POST
Линк: http://www.eatonpowersource.com/cross-reference/results/
Параметры
Criteria.SiteSearchTerm
Criteria.CurrentPageNumber=1
Criteria.FilterOptions.SortBy=CompetitorPartNumber
Criteria.FilterOptions.SortOrder=Asc
Criteria.CompetitorPartNumber=0330D0
Criteria.FilterOptions.PageSize=25

и
Метод: GET
линк:
http://www.eatonpowersource.com/cross-reference/json/criteriaresults/?Criteria.SiteSearchTerm=&Criteria.CurrentPageNumber=1&Criteria.FilterOptions.SortBy=CompetitorPartNumber&Criteria.FilterOptions.SortOrder=Asc&Criteria.CompetitorPartNumber=0330D0&Criteria.FilterOptions.PageSize=25&_=1569680055925

Параметры
Criteria.SiteSearchTerm=
Criteria.CurrentPageNumber=1
Criteria.FilterOptions.SortBy=CompetitorPartNumber
Criteria.FilterOptions.SortOrder=Asc
Criteria.CompetitorPartNumber=0330D0
Criteria.FilterOptions.PageSize=25
_=1569680055925

когда задаю request c данными из GET, то приходит следующее

что не совсем нужно

когда задаю request c данными из POST, то приходит или
404 - page not found
или ошибка 500

 # функция для отправки веб запроса и записи результатов в файл
def fg_list_bot(_name_element, _output_file):
    s = requests.Session()
    _data = {"Criteria.SiteSearchTerm":"",
             "Criteria.CurrentPageNumber":"1",
             "Criteria.FilterOptions.SortBy":"CompetitorPartNumber",
             "Criteria.FilterOptions.SortOrder":"Asc",
             "Criteria.CompetitorPartNumber":_name_element,
             "Criteria.FilterOptions.PageSize":"25",
             "_":"1569680055925"}
    r = requests.post("_Url", data=_data)
    with open(_output_file, "w") as f: f.write(r.text)
    print(r.status_code)
    input()
import requests
from bs4 import BeautifulSoup
_url = "http://www.eatonpowersource.com/cross-reference/results/"
_name_element = "0330D0"      # текст запроса который посылаем в форму
_output_file = "Eaton_Vickers.html"
fg_list_bot(_name_element, _output_file)
f_parse(_output_file)

Офлайн

#2 Сен. 30, 2019 17:23:35

zahar
Зарегистрирован: 2013-07-15
Сообщения: 39
Репутация: +  3  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

почему в скрипте _url = "http://www.eatonpowersource.com/cross-reference/results/" ?
адрес выдает: Internal Server Error - 500

Офлайн

#3 Окт. 1, 2019 14:45:58

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

мне помогли в этом вопросе
чел сказал пошли гет запрос на этот линк
www.eatonpowersource.com/cross-reference/?sitesearchterm=0330D0
линк действительно работает, я на его базе написал парсинг по списку.
Одного только не понимаю - откуда он этот линк взял.
я весь оригинальный вебсайт просмтрел, там нет такого линка вообще.
Есть у кого идеи, как он нашел этот линк?

Офлайн

#4 Окт. 1, 2019 15:36:14

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

gtlhbkkj
Есть у кого идеи, как он нашел этот линк?
Скорее всего, он в браузере открыл консоль разработчика и там отследил поведение браузера (запросы) при нажатии на кнопки.



Офлайн

#5 Окт. 1, 2019 16:36:10

zahar
Зарегистрирован: 2013-07-15
Сообщения: 39
Репутация: +  3  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

для таких целей я использую Firefox Developer Edition

Офлайн

#6 Окт. 9, 2019 18:50:52

gtlhbkkj
Зарегистрирован: 2019-09-20
Сообщения: 173
Репутация: +  2  -
Профиль   Отправить e-mail  

Помогите. Парсинг сайта не могу правильно установить параметры request.

zahar
для таких целей я использую Firefox Developer Edition
установил его
всё равно на тот линк не могу выйти
если вы смогли выйти на указанный линк, пожста поделитесь как у вас получилось.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version