Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

Заповнення форм за допомогою PHP і cURL

  1. Заповнення форм за допомогою PHP і cURL Я думаю, знайдуться люди, які, прочитавши заголовок, вирішувати...

Заповнення форм за допомогою PHP і cURL

Я думаю, знайдуться люди, які, прочитавши заголовок, вирішувати що в статті мова піде про створення якоїсь спамілка (бота) для форумів або соціальних мереж. За великим рахунком так і є 🙂, але з деякими застереженнями.

В принципі, будь-який інструмент, призначений для автоматизації ваших дій, можна використовувати для розсилки спаму (в тій чи іншій формі). До cURL це відноситься подвійно, тому що ця утиліта дозволяє імітувати роботу браузера. Але на мій погляд не правильно приховувати корисну інформацію тільки тому, що хтось може її використовувати для розсилки спаму.

Проте, прикладів роботи з конкретними сайтами тут не буде, тільки опис принципу роботи і потрібних функцій.

Отже, у нас є інструмент (cURL), який робить велику частину роботи за нас. І для роботи з ним існує ряд бібліотек в тому числі і для PHP .

Розглянемо найпростіший приклад - отримання сторінки.

$ Login_url = 'http://my_site.com/'; $ Agent = 'Mozilla / 4.0 (compatible; MSIE 5.01; Windows NT 5.0)'; $ Ch = curl_init (); // ініціалізація бібліотеки // вказуємо адресу сторінки curl_setopt ($ ch, CURLOPT_URL, $ login_url); // вказуємо заголовок User-Agent curl_setopt ($ ch, CURLOPT_USERAGENT, $ agent); // вказуємо, що отримана сторінка повинна бути збережена в змінну curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1); // вказуємо, що cURL повинен переходити по редирект curl_setopt ($ ch, CURLOPT_FOLLOWLOCATION, 1); // виконуємо запит $ page = curl_exec ($ ch);

Як бачите, потрібно форматувати бібліотеку, вказати параметри підключення і відправити запит. В результаті сторінка буде збережена в змінної page.

Тепер подивимося, що потрібно зробити для аутентифікації на сайті і подальшої роботи з ним.

1) Відправити запит з логіном і паролем.

Попередньо потрібно дізнатися назви полів в формі авторизації. На мій погляд, найкраще для цих цілей підходить Firebug (Плагін до FireFox). Тобто вам потрібно вручну зайти на сайт і подивитися які запити відправляються і з якими параметрами.

Наприклад, якщо форма аутентифікації відправляє запит на сторінку
http://my_site.com/checklogin
а введені дані передаються в полях login і pass методом post, то потрібно вказати наступні параметри.

$ Referer = 'http://my_site.com/'; $ PostLoginFields = array (); $ PostLoginFields [ 'login'] = 'your login'; $ PostLoginFields [ 'pass'] = 'your password'; // referer - адреса сторінки з якої ви прийшли, //т.е. потрібно вказати адресу сторінки на якій знаходиться форма curl_setopt ($ ch, CURLOPT_REFERER, $ reffer); // вказуємо, що ми відправляємо дані методом post curl_setopt ($ ch, CURLOPT_POST, 1); // додаємо рядок з post даними curl_setopt ($ ch, CURLOPT_POSTFIELDS, http_build_query ($ postLoginFields));

Зверніть увагу, ми використовували параметр CURLOPT_REFERER, тому що браузер передає адреса сторінки з якої він прийшов. В даному випадку мається на увазі, що ви зайшли на сторінку з формою входу, заповнили її (форму) і натиснули кнопку «Увійти», тобто відправили запит.

Крім того, ми використовували функцію http_build_query для того, щоб сформувати рядок з post даними з масиву. Це набагато зручніше, ніж складати її вручну.

2) Зберегти cookie.

Оскільки протокол HTTP не передбачає збереження стану відвідувача, то для цих цілей зазвичай використовують cookie. У нашому випадку це означає, що в момент аутентифікації сервер відправить нам cookie, а наше завдання - її зберегти і використовувати при виконанні наступних запитів. Робиться це так.

// створюємо файл для cookies $ cookiefile = tempnam ( 'path / to / cookie / folder', 'cookie_'); curl_setopt ($ ch, CURLOPT_COOKIEFILE, $ cookiefile); curl_setopt ($ ch, CURLOPT_COOKIEJAR, $ cookiefile);

Функція tempnam створює файл з унікальним ім'ям. У першому параметрі вказуємо розміщення файлу, у другому - префікс (не обов'язково).

3) Заповнення форм на сайті.

Тут все просто. Порядок дій нічим не відрізняється від першого кроку. Заповнюєте форму вручну, дивіться що і куди вирушає і розповідаєте про це cURL'у. Єдиний нюанс - у вас вже повинен бути збережений cookie.

Думаю, ви вже зрозуміли, що використовуючи cURL ви можете написати скрипт, який буде переміщатися по сайту і імітувати дії звичайних користувачів. Але я хочу нагадати, що, по-перше, спамити погано, по-друге, такі дії зазвичай дуже не подобаються адміністрації ресурсів. Тому не дивуйтеся якщо вас забанити по IP 😉. І по-третє, точно такі ж скрипти можна використовувати і в «мирних» цілях, наприклад, для створення автоматизованих тестів, перевірки доступності сайтів, часу відгуку і т.п.

цікаво почитати

На нашому сайті ви завжди знайдете вірші про кохання
Дитячі меблі б.у - хороша можливість заощадити.

Отже, як підприємцю вести бухоблік ІП ? Кілька простих правил.

Запалення форм за допомогою PHP і cURL

Я думаю, знайдуться люди, які, прочитавши заголовок, вирішувати що в статті мова піде про створення якоїсь спамілка (бота) для форумів або соціальних мереж. За великим рахунком так і є 🙂, але з деякими застереженнями.

В принципі, будь-який інструмент, призначений для автоматизації ваших дій, можна використовувати для розсилки спаму (в тій чи іншій формі). До cURL це відноситься подвійно, тому що ця утиліта дозволяє імітувати роботу браузера. Але на мій погляд не правильно приховувати корисну інформацію тільки тому, що хтось може її використовувати для розсилки спаму.

Проте, прикладів роботи з конкретними сайтами тут не буде, тільки опис принципу роботи і потрібних функцій.

Отже, у нас є інструмент (cURL), який робить велику частину роботи за нас. І для роботи з ним існує ряд бібліотек в тому числі і для PHP .

Розглянемо найпростіший приклад - отримання сторінки.

$ Login_url = 'http://my_site.com/'; $ Agent = 'Mozilla / 4.0 (compatible; MSIE 5.01; Windows NT 5.0)'; $ Ch = curl_init (); // ініціалізація бібліотеки // вказуємо адресу сторінки curl_setopt ($ ch, CURLOPT_URL, $ login_url); // вказуємо заголовок User-Agent curl_setopt ($ ch, CURLOPT_USERAGENT, $ agent); // вказуємо, що отримана сторінка повинна бути збережена в змінну curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1); // вказуємо, що cURL повинен переходити по редирект curl_setopt ($ ch, CURLOPT_FOLLOWLOCATION, 1); // виконуємо запит $ page = curl_exec ($ ch);

Як бачите, потрібно форматувати бібліотеку, вказати параметри підключення і відправити запит. В результаті сторінка буде збережена в змінної page.

Тепер подивимося, що потрібно зробити для аутентифікації на сайті і подальшої роботи з ним.

1) Відправити запит з ім'ям і паролем.

Попередньо потрібно дізнатися назви полів в формі авторизації. На мій погляд, найкраще для цих цілей підходить Firebug (Плагін до FireFox). Тобто вам потрібно вручну зайти на сайт і подивитися які запити відправляються і з якими параметрами.

Наприклад, якщо форма аутентифікації відправляє запит на сторінку
http://my_site.com/checklogin
а введені дані передаються в полях login і pass методом post, то потрібно вказати наступні параметри.

$ Referer = 'http://my_site.com/'; $ PostLoginFields = array (); $ PostLoginFields [ 'login'] = 'your login "; $ PostLoginFields [ 'pass'] = 'your password'; // referer - адреса сторінки з якої ви прийшли, //т.е. потрібно вказати адресу сторінки на якій знаходиться форма curl_setopt ($ ch, CURLOPT_REFERER, $ reffer); // вказуємо, що ми відправляємо дані методом post curl_setopt ($ ch, CURLOPT_POST, 1); // додаємо рядок з post даними curl_setopt ($ ch, CURLOPT_POSTFIELDS, http_build_query ($ postLoginFields));

Зверніть увагу, ми використовували параметр CURLOPT_REFERER, тому браузер передає адреса сторінки з якої він прийшов. У даному випадку мається на увазі, що ви зайшли на сторінку з формою входу, заповнили її (форму) і натиснули кнопку «Увійти», тобто відправили запит.

Крім того, ми використовували функцію http_build_query для того, щоб сформувати рядок з post даними з масиву. Це набагато зручніше, ніж складати її вручну.

2) Зберегти cookie.

Оскільки протокол HTTP не передбачає збереження стану відвідувача, то для цих цілей зазвичай використовують cookie. У нашому випадку це значить, що в момент аутентифікації сервер відправить нам cookie, а наше завдання - її зберегти і використовувати при виконанні наступних запитів. Робиться це так.

// створюємо файл для cookies $ cookiefile = tempnam ( 'path / to / cookie / folder', 'cookie_'); curl_setopt ($ ch, CURLOPT_COOKIEFILE, $ cookiefile); curl_setopt ($ ch, CURLOPT_COOKIEJAR, $ cookiefile);

Функція tempnam створює файл з унікальним ім'ям. У першому параметрі вказуємо розміщення файлу, у другому - префікс (не обов'язково).

3) Заповнення форм на сайті.

Тут все просто. Порядок дій нічим не відрізняється від першого кроку. Заповнюєте форму вручну, дивіться що і куди вирушає і розповідаєте про це cURL'у. Єдиний нюанс - у вас вже повинен бути збережено cookie.

Думаю, ви уже зрозуміли, що використовуючи cURL ви можете написати скрипт, який буде переміщатися по сайту і імітувати дії звичайних користувачів. Але я хочу нагадати, що, по-перше, спамити погано, по-друге, такі дії зазвичай дуже не подобаються адміністрації ресурсів. Тому не дивуйтеся якщо вас забанити по IP 😉. І по-третє, точно такі ж скрипти можна використовувати і в «мирних» цілях, наприклад, для створення автоматизованих тестів, перевірки доступності сайтів, часу відгуку і т.п.

цікаво почитати

На нашому сайті ви завжди знайдете вірші про кохання
Дитячі меблі б.у - хороша можливість заощадити.

Отже, як підприємцю вести бухоблік ІП ? Кілька простих правил.

Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    Подготовка к ЕГЭ по математике
    Статьи Опубликовано: 05.10.2017 Подготовка к ЕГЭ по МАТЕМАТИКЕ. 1 часть. Эффективный курс подготовки. Вы находитесь на сайте www.ege-ok.ru - Подготовка к ЕГЭ по математике. Меня зовут Инна Владимировна

    Куда поступить с обществознанием, русским и математикой
    Статьи Опубликовано: 06.10.2017 Сдача ЕГЭ. Куда поступать? Обществознание считается одним из самых популярных предметов, которые выпускники сдают на ЕГЭ. Ввиду высокого рейтинга дисциплины Рособрнадзор

    Сайт Майер Елены - ЕГЭ по математике
    Планируется проведение двух отдельных экзаменов – базового и профильного. Кому сдавать базовый ЕГЭ по математике? Базовый ЕГЭ организуется для выпускников, изучающих математику для общего развития

    ГДЗ решебник по математике 4 класс
    Извините, тут пока ничего нет ((( Решебник по математике 4 класс (Истомина Н.Б.) – не просто возможность быстро выполнить домашнее задание для учащегося, но и способ разобраться в труднорешаемых задачах.

    ГДЗ по математике 1 класс Самсонова самостоятельные работы
    Решебник по математике за 1 класс автора Самсоновой Л.Ю. 2012 года издания. Данное пособие предлагает готовые решения на разнообразные упражнения, направленные на активизацию всего учебного процесса. Здесь

    Для этой работы нужна математика
    Слотов: 956 Рулеток: 7 Лицензия: Pragmatic Play, Microgaming, ELK, Yggdrasil, Habanero, Amatic, Isoftbet, Netent, Rival, Igrosoft, Quickspin. Игры: Автоматы, Покер, Рулетки. Всего 963 Отдача: 98% Бонус

    Веселые задачи по математике 2 класс
    Во время занятий для того, чтобы немного переключить внимание школьников, но при этом не уйти от предмета, можно давать шутливые задачи на сообразительность. Буду пополнять коллекцию таких задач. Дополнительная

    Функция экспонента в Excel
    Одной из самых известных показательных функций в математике является экспонента. Она представляет собой число Эйлера, возведенное в указанную степень. В Экселе существует отдельный оператор, позволяющий

    ЕГЭ по математике 2018
    ЕГЭ по математике, наравне с русским языком , – обязательный экзамен для сдачи выпускниками 11-х классов. По статистике он самый сложный. Мы предлагаем ознакомиться с общей информацией об экзамене и

    Секреты эффективной и быстрой подготовки ко второй части ОГЭ по математике.
    Уважаемые девятиклассники, настоящие или будущие! Часто от вас приходится слышать следующие вопросы. Легко ли подготовиться к заданиям второй части ОГЭ по математике? Сколько для этого понадобится


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: