Budget: 500 UAH Deadline: 2 days
Здравствуйте, готов поработать с Вашим техническим заданием, напишите мне
Необходимо наладить и доработать скрипт парсинга прокси.
1. перестал работать парсер прокси.
2. сделать парсер универсальным (источники прокси имеют почти одинаковую структуру).
3. сделать вывод из базы данных рандомно небольшого количества прокси на страницу.
4. Настроить систему оплаты
Budget: 500 UAH Deadline: 2 days
Здравствуйте, готов поработать с Вашим техническим заданием, напишите мне
Budget: 400 UAH Deadline: 3 days
Могу выполнить,посмотрел код.Обращайтесь обсудим тех задания.
Budget: 500 RUB Deadline: 1 day
Добрый день.
Готов помочь.
Можно прасер посмотреть?!
Буду рад сотрудничать.
добрый день!
вот код:
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . "/libs/phpQuery.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/modules/db.php";
class freeproxyParser
{
public function __construct()
{
$document = phpQuery::newDocument($this->parser("https://free.proxy-sale.com/?proxy_page=1"));
$last_page = explode("=", $document->find(".pagination li:last() a")->attr("href"))[1];
phpQuery::unloadDocuments($document);
for ($i = 0; $i < $last_page; $i++)
{
$b = $i + 1;
$this->get_proxy($this->parser("https://free.proxy-sale.com/?proxy_page=" . $b));
}
}
public function parser($url, $postdata="", $cookie="")
{
$uagent = "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_USERAGENT, $uagent);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
if(empty($postdata))
{
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
}
if(empty($cookie))
{
curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookies/freeproxy.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE,$_SERVER['DOCUMENT_ROOT'].'/cookies/freeproxy.txt');
}
$html = curl_exec($ch);
curl_close($ch);
return $html;
}
public function get_proxy($html)
{
$urls = array(
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/924fee2fff4c5d149433de816d985a8b.png" => "80",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/e58a3cb12d4b567523fec022a24c254a.png" => "1080",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/89b09fc0f66997e8421d8061030c983a.png" => "8080",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/59f3846408407d3143db9f405531ec65.png" => "8888",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/b0450a74d5c38f7859f8066b0a81c4f5.png" => "8088",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/a1d3cebf33ed2852e5410946c9beb04b.png" => "4145",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/8201cd23cc5d1b26b0462d7017c2628e.png" => "4153",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/066decf94e62d206974e62b2e1673886.png" => "2580",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/ed8fc6848c8592a906e9f5e875ce3eed.png" => "3629",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/299db15b3a5f119636dba89962650a03.png" => "8123",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/b8c08b828f5c8138a86e18667aa60824.png" => "808",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/e3f65f8ff04504869f3e163d532381f2.png" => "3128",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/80daea97f3413973c5ece346aa4518cc.png" => "3004",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/6288b8ac94c2cd3729370bf162930a78.png" => "8181",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/a3ac817714484fe00db6d4d0e23c46a9.png" => "4550",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/3a368e4edca060c47c2a5bc0aa6ff0dc.png" => "5220",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/ffd2a4f57b28fe028b8e02689e7888ce.png" => "443",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/6913e86febc7134f539dcf120f6238ee.png" => "6660",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/3f272975c1cc4e6d8c838ac027b4b7a9.png" => "1085",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/a089dd618ecb532de560880729150af9.png" => "8118",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/0e91a57afc1a9f95a1c2bc3cf234c0e7.png" => "4645",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/1dc2858c779e26255f0914bef2f7c0fc.png" => "3127",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/4941ccdc296f1e8d57e6c618bfdc2b76.png" => "4444",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/bf065142e4d52da8523d815e2c11d269.png" => "5555",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/4f01e9e5860bda7ff7dd578ccbe6974a.png" => "3000",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/7c4c050385d4d9cbe75b8b702859a6e4.png" => "6667",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/4f7dc9800d3b6989b68b3c6987fad613.png" => "3001",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/37a8cc48c1bf89668638a653eff5669c.png" => "1081",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/960c21bfa57049a05043a830d7c0ca10.png" => "8841",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/598b94247312b0635b6fd9843acf6184.png" => "6666",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/5e9d32390daf056c434a6811df5091bb.png" => "6969",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/adbfd426b471cb3ae1131261e59c5a2f.png" => "8000",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/603d8a7d8443e883e4fd5b7ff52babe7.png" => "1827",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/d8c98a82c2834e402c90124cf294510a.png" => "6363",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/230427fcd49bc6220f606f819cb921e1.png" => "1994",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/ed3900912472d71ebe51b2cc14e62b12.png" => "81",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/c6858ade9dd047ea5bac988155c6ccea.png" => "8444",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/b69f18579533d3c3465c457348a479e1.png" => "8624",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/5d8b0c255ea2ee9ce83c95fdead2c00b.png" => "1488",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/fa370e292fc3afa9fb2945490edc1300.png" => "3636",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/588e0cae49fa547834daf218cdb0cbb4.png" => "5678",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/a4f3baf5e9a9fcb6fbe0b94662d771c0.png" => "1723",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/de9a2ca73dcb022178c5127e84f39213.png" => "9001",
"https://free.proxy-sale.com/wp-content/uploads/fps/port_images/6d0ae03d0e1edfedb333009035990b68.png" => "6789"
);
$document = phpQuery::newDocument($html);
for($i = 0; $i < 10; $i++)
{
$ip_str = $document->find("tbody tr:eq(". $i .") td:eq(0)")->text();
$ip = explode("Н", $ip_str)[0];
$port = $document->find("tbody tr:eq(". $i .") td:eq(1) img")->attr("src");
if(!$port)
{
$port = $document->find("tbody tr:eq(". $i .") td:eq(1)")->text();
}
else
{
foreach ($urls as $url => $key)
{
if($port == $url)
{
$port = $key;
}
}
}
$country = $document->find("tbody tr:eq(". $i .") td:eq(2)")->text();
$type = $document->find("tbody tr:eq(". $i .") td:eq(3)")->text();
if($ip != "" && $port != "" && $country != "" && $type != "")
{
if(R::count("proxys", "ip = ? AND port = ?", array(trim($ip), trim($port))) == false)
{
$connect = R::dispense("proxys");
$connect->ip = trim($ip);
$connect->port = trim($port);
$connect->country = trim($country);
$connect->type = trim($type);
R::store($connect);
}
}
}
phpQuery::unloadDocuments($document);
}
}
$parser = new freeproxyParser();
49 proposals 4 August
37 proposals 3 August
75 proposals 2 August
Web Programming 30 proposals 30 July
Python 49 proposals 30 July