Существует очень простой веб-сайт, содержащий только несколько элементов, из которых я бы хотел получить таблицу. Раньше я использовал file_get_contents ('http://www.example.com') для этой конкретной цели и извлек часть информации, которая мне нужна, с помощью команд explode и str_replace, которые отлично работали.
Однако для этого веб-сайта требуются данные POST, прежде чем он отобразит нужную мне таблицу. Я знаю только имя и идентификатор полей выбора, через которые передаются данные, а также «значение параметра», которое мне нужно отправить.
Другое дело, что второй поле выбора появляется только после того, как первый был рассмотрен , так же как и таблица, только когда опция выбрана для обоих.
Как мне сделать выборку таблицы?
Заранее спасибо!
Абстрактное (и плохое) представление сайта, обслуживающего таблицу:
<select id='select_box_1' name='first select box'> <option value='option1_1'>Thing one</option> <option value='option1_2'>Second thing</option> <option value='option1_3'>Thing number three</option> </select> NOTE: Selecting an option will spawn: <select id='select_box_2' name='second select box'> <option value='option2_1'>First thing</option> <option value='option2_2'>Second choice</option> <option value='option2_3'>The third option</option> </select> NOTE: Selecting an option will spawn the table I need.
Попробуйте с завихрением :
Вот несколько примеров
Я предполагаю, что сайт, который вы пытаетесь очистить, сохраняет значение первого выбора в сеансе после POST, чтобы заполнить / показать второй выбор. Это означает, что это невозможно сделать с помощью одного запроса.
Вам нужно будет использовать PHP Http-клиент, который поддерживает POST и сеансы / файлы cookie. Zend_Http_Client из ZendFramework поддерживает оба варианта, поэтому является хорошим кандидатом.