Здрасьте, а что плели околесицу о вставке ссылки в Input и т.д.?
За код парсера страницы нужно платить. Но оплаты можно и избежать, если использовать уже имеющиеся готовые классы, на память названий всех не помню, это simpleHTMLdom и др. Ищите гуглом, изучайте, используйте. |
Цитата:
У меня не получается спарсить автора, описание? |
Ну причем тут ява? Вам клиент собственно говоря вообще не нужен, если "тык", это единственный url, по которому нужно получить данные. Написали скрипт обработчик и запускайте его планировщиком задач.
Если все таки с клиента запускать, но по постоянному url, то просто запрос скрипта на выполнение. В любом случае парсить будет сервер, ищите в сети указанную библиотеку simpleHTMLdom, не мне же ее для вас качать. В сети есть и описание работы с ней и достаточно чтобы понять как с ней работать, ничего сложного в ней нет. Если же даже это не поможет, то могу сделать платно, но при условии четко поставленной задачи. |
Норм библиотека. Установил, вот строки есть которые парсят:
<?php include_once('../simple_html_dom.php'); echo file_get_html('https://gta5-mods.com/vehicles/2013-audi-s8-fsi-beta')->plaintext; ?> а как сделать, что-бы парсило определленные места? Например, то что в тегах <a class="myid"> ... </a> |
Щяс доделаю и спрошу что не понимаю.. :write:
|
Читайте описание ее, в ней получение по url - $html->load_file(url), поиск нужного, это метод find(content).
|
laimas,
Вот вывожу два раза, правильно так будет? <?php include_once('simple_html_dom.php'); if (isset($_POST['sub']) ) { // Create DOM from URL or file $html = file_get_html($_POST ['link']); // Find all images foreach($html->find('div[class=clearfix] h1') as $element) echo $element->plaintext . '<br>'; // Find all images foreach($html->find('a[class=username]') as $element) echo $element->plaintext . '<br>'; } ?> |
Теперь каждое нужно вставить в определенное поле input.
Подскажите как правильно сделать и я сделаю. |
Получился такой вот скрипт
<form action="example_extract_html.php" method="post"> <input type="text" name="link" value=""> <input type="submit" name="sub" value="button"> </form> <?php include_once('simple_html_dom.php'); if (isset($_POST['sub']) ) { // Create DOM from URL or file $html = file_get_html($_POST ['link']); // Find all images foreach($html->find('div[class=clearfix] h1') as $element) echo $element->plaintext; // Find all images foreach($html->find('a[class=username]') as $element) echo '<span id="pars">'; echo $element->plaintext; echo '</span>'; } ?> <input type="button" value="add" onclick = "document.getElementById('out').value += document.getElementById('pars').value + '\n'"> Но почму в поле input вставляется значение undefined? |
Вы пытаетесь скрестить ежика с колючей проволокой - серверный язык ничего не подозревает о клиентском языке и наоборот. Если полученные парсером данные нужно вставить в поля формы, которая будет отдана клиенту, то делать это нужно здесь:
foreach($html->find('div[class=clearfix] h1') as $element) echo '<input name="as[]" value="'. htmlspecialchars($element->plaintext, ENT_QUOTES) .'" />'; Либо в цикле парсера создается массив из полученных значений, который отдаются клиенту как JSON, над которыми клиент производит те или иные операции. |
Часовой пояс GMT +3, время: 07:46. |