phantomjs – парсинг web с поддержкой js

Зачем
В отличии от mechanize, который очень удобен и функционален, phantomjs, судя прямо из названия, поддерживает исполнение javascript без установки браузера.
Установка
Устанавливать проще всего через apt-get/yum. Можно так же скачать пакет с сайта, плюсом будет самая свежая версия пакета.

Читать дальше

Curl разное

отправка GET и POST переменных

GET: curl “https://weril.me/?s=curl”

~$ curl "https://weril.me/?s=curl" 2>/dev/null | grep "page-title" 
 <h1 class="page-title">Search Results for: curl</h1>

POST: curl -d “s=curl” “https://weril.me/”

~$ curl -d "s=curl" "https://weril.me/" 2>/dev/null | grep "page-title" 
 <h1 class="page-title">Search Results for: curl</h1>

 

работа через proxy

HTTP

curl --proxy 217.61.104.140:3128 https://2ip.ru/

SOCKS5

curl -v -x socks5://11.146.29.66:33231 http://www.google.com/ # Без авторизации
curl -v -x socks5://testuser:testuser@11.146.29.66:33231 http://www.google.com/ # С авторизацией

 

отброс download info

Я использую 2>/dev/null для отброса инфы по загрузке, которая генерируется curl’ом в виде STDERR в случае если STDOUT перенаправляется куда-то (без разницы в файл или pipeline).

Читать дальше

PHP wget/curl

Для простых get-запросов достаточен file_get_contents, для чего-то более сложного рекомендуют использовать библиотеку curl. Примеры использования Curl можно взять тут.
Пример
Выгрузка содержимого страницы в php. Юзал fopen насколько помню, чтобы отдать URL с переменной нужно заменить скобки ” на “”.

Читать дальше