в маркете по артикулу далеко не всё.
Aleksey писал(а):Под никс парсер не автоматический, помоему (это значит что вам нужно руками в полуавтоматическом режиме описание скачивать)
я бы сказал в частично-автоматическом режиме.
т.е. чтобы выдернуть из никса позицию, мне нужно произвести следующие действия:
1. выбрать товар.
2. указать, что сайт nix
3. в открывшмся окне с сайтом заполнить строку поиска (что при поиске по маркету делается автоматически)
4.И только после этого я могу сграбить данные.
____
С учётом всевозможных копипастов, получается очень долго, но 100% результат. (хоть при поиске по артикулу никса, хоть производителя)
поэтому и хотелось узнать как можно более автоматизировать этот процесс.
ведь.
А) Есть для чего-то меню настройки парсеров.
Б) Есть html код блока поиска с сайта никса.
<form name='frm' method='get' id='frm' action='' class='asholder' onsubmit='go_search(document.getElementById("textfield").value,"frm","frm","http://www(точка)nix.ru")'>
<input type='hidden' id='frm1' name='aut' value=''>
<div style='padding-top:2px;'>
<div style='float:left;margin:2px;padding:4px 1px 1px 1px;'>Искать </div>
<div style='float:left;margin-right:3px;margin-top:1px;height:21px;'>
<input type='hidden' id='testid' value='' style='font-size: 10px; width: 20px;' disabled='disabled'>
<input style='width: 150px' type='text' name='textfield' id='textfield' value=''>
</div><div style='float:left;margin-right:6px;padding:4px 1px 1px 1px;'>в</div>
<div class='search'><a id='a11' href='#' onclick='go_search(document.getElementById("textfield").value,"a11","frm","
http://www.nix.ru")'>товарах</a></div><div class='search'><a id='a12' href='#' onclick='go_search(document.getElementById("textfield").value,"a12","frm","
http://www.nix.ru")'>артикулах</a></div>
<div class='search'><a href='#' onclick="this.href='
http://www.nix.ru/support/request/check ... х</a></div>
<div class='search'><a href='#' onclick="this.href='
http://www.nix.ru/support/drivers_searc ... х</a></div>
<div class='search'><a href='#' onclick="this.href='
http://www.nix.ru/support/faq_search.ph ... Q</a></div>
<div class='search_b'><a href='
http://www.nix.ru/documents/search_description.html'><b> ? </b></a></div><div class='search' id='BasketCell' style='display:none;'><a target='_top' href='
http://www.nix.ru/price/virtualshop.htm ... </div><div class='search' id='BasketCellCB' style='display:none;' onmouseover="Tip(TipString);" onmouseout="UnTip()"><a target='_top' href='
http://www.nix.ru/price/virtualshop_cb. ... 1'>Корзина <span id='goods_counter' style='display:inline;'></span></a></div>
<script language="javascript" type="text/javascript">
ajax_request(4, null);
</script>
<script language="javascript" type="text/javascript">
if(isMSIE)
{
var elem=document.getElementById('BasketCell');
elem.style.display='block';
}
else
{
var elem=document.getElementById('BasketCellCB');
elem.style.display='block';
}
</script></div><div class='clearing'></div>
<input type='hidden' name='min_price' id='min_price' value=''>
<input type='hidden' name='max_price' id='max_price' value=''>
<input type='hidden' name='out_of_stock' id='out_of_stock' value=''>
<input type='hidden' name='category' id='category' value=''>
</form>
В) И есть JS c описанием необходимой нам функции:
function go_search(str,el_id,form_id,root_override) { str=trim(str); var obj_id=document.getElementById(el_id); var frm_id=document.getElementById(form_id); var res=/^\d{4,5}\s*$/.test(str); var ch_num=/^\d{1,5}$/.test(str); if (res) { if (el_id=='frm' || el_id=='a12') { var aut_id=form_id+'1'; var inp_id=document.getElementById(aut_id); frm_id.action=root_override+'/2id.php'; if (el_id=='frm') inp_id.value=1; else inp_id.value=0; frm_id.submit(); } else { frm_id.action=root_override+'/price/search_panel.html'; frm_id.submit(); } } else { if (el_id=='frm') { frm_id.action=root_override+'/price/search_panel.html'; frm_id.submit(); } else { if (ch_num && el_id=='a12') { frm_id.action=root_override+'/2id.php'; frm_id.submit(); } else { frm_id.action=root_override+'/price/search_panel.html'; frm_id.submit(); } } } }
Итого - необходимая строка для поиска получается приблизитльно следующей:
http://www(точка)nix.ru/price/search_panel.html?aut=&textfield=85574&min_price=&max_price=&out_of_stock=1&category=
где
aut= (скорее всего указывает на код кнопки которую мы щёлкнули после заполнения необходимых полей)
textfield=данные которые нужно найти
min_price=&max_price= минимальная и максимальная цена
out_of_stock= (0 или 1) включить\выключить поиск в отсутствующих товарах
category= (тоже вот не совсем понятно)
Г)Эти данные доступны каждому
А вообще надеялся, что техподдержка отреагирует быстрее..всё-таки я у них покупал, а не у кого-то