search nhn shopping 분석자료
하나를하더라도최선을
2022-08-23 13:50:24
7
0
0
접속 후 광고가 아닌 일반 상품을 클릭하면
Referer 없을경우:)
https://msearch.shopping.naver.com/search/coordi/viewer?
nvMid=83841201103
&query=%EB%B8%94%EB%9E%99%EC%98%B7
&gender=all
&bt=-1
&frm=MCODPRO
Referer 있을경우:)
https://m.search.naver.com/p/crd/rd?
m=1
&px=309
&py=1275
&sx=309
&sy=475
&p=hwektwprffossC964G8ssssssBR-325587
&q=%EB%B8%94%EB%9E%99%EC%98%B7
&ie=utf8
&rev=1
&ssc=tab.m.all
&f=m
&w=m
&s=cEpyPld%2FAf0hcCS1mDh3Hg%3D%3D
&time=1661229852040
&abt=%5B%7B%22eid%22%3A%2210%22%2C%22vid%22%3A%2244%22%7D%2C%7B%22eid%22%3A%22SBR1%22%2C%22vid%22%3A%22361%22%7D%5D
&u=https%3A%2F%2Fmsearch.shopping.naver.com%2Fsearch%2Fcoordi%2Fviewer%3FnvMid%3D83408889964%26query%3D%25EB%25B8%2594%25EB%259E%2599%25EC%2598%25B7%26gender%3Dall%26bt%3D-1%26frm%3DMCODPRO
&r=8
&i=00000009_00136b8ea86c
&a=shp_cod*i.t
&cr=1
이런 형식의 링크가 생성됩니다.
검색 URL:)
접속 후 광고가 아닌 일반 상품늘 클릭하면:)
이런 형식의 링크가 생성됩니다.
이는 아래에서 goOtherCR 함수의 vb함수로 전환을 해야 합니다. |
<li class="_product" data-nvmid="83680793317">
<a href="/p/crd/rd?m=1&px=301&py=4613&sx=301&sy=313&p=hwd3RsqVWuKssci%2BTTdsssssslw-217640
&q=%EC%98%A4%EB%8C%80%EC%82%B0+%EC%98%A4%EB%AF%B8%EC%9E%90&ie=utf8&rev=1&ssc=tab.m.all&
f=m&w=m&s=wO%2BvWRyj%2FZWoHMMvolv6cA%3D%3D&time=1661220743692&
abt=%5B%7B%22eid%22%3A%2210%22%2C%22vid%22%3A%2244%22%7D%2C%7B%22eid%22%3A%22SBR1%22%2C%22vid%22%3A%22361%22%7D%5D&
u=https%3A%2F%2Fcr3.shopping.naver.com%2Fbridge%2FsearchGate%3Fcat_id%3D50002384%26nv_mid%3D83680793317%26
query%3D%25EC%2598%25A4%25EB%258C%2580%25EC%2582%25B0%2B%25EC%2598%25A4%25EB%25AF%25B8%25EC%259E%2590%26bt%3D-1%26frm%3DMOSCPRO%26
h%3Db6d2246cc6b11cac79df3daaf3e97f6a5aa80269%26t%3DL75JWMXL&r=2&i=00000009_00137bc392e5&a=shp_lis.outitem&cr=5"
onclick="goOtherCR(this,'u='+urlencode(this.href)+'&r=2&i=00000009_00137bc392e5&a=shp_lis.outitem');"
class="product" crp="u=https%3A%2F%2Fcr3.shopping.naver.com%2Fbridge%2FsearchGate%3Fcat_id%3D50002384%26nv_mid%3D83680793317%26
query%3D%25EC%2598%25A4%25EB%258C%2580%25EC%2582%25B0%2B%25EC%2598%25A4%25EB%25AF%25B8%25EC%259E%2590%26bt%3D-1%26
frm%3DMOSCPRO%26h%3Db6d2246cc6b11cac79df3daaf3e97f6a5aa80269%26t%3DL75JWMXL
&r=2&i=00000009_00137bc392e5&a=shp_lis.outitem"
cru="https://cr3.shopping.naver.com/bridge/searchGate?cat_id=50002384&
nv_mid=83680793317&query=%EC%98%A4%EB%8C%80%EC%82%B0+%EC%98%A4%EB%AF%B8%EC%9E%90&
bt=-1&frm=MOSCPRO&
h=b6d2246cc6b11cac79df3daaf3e97f6a5aa80269&t=L75JWMXL">
<div class="thumb">
<img src="https://shopping-phinf.pstatic.net/main_8368079/83680793317.jpg?type=f300"
onerror="shp_no_image(this, 'bg_nimg2');"
width="120" height="120"
alt="[오대산 식품] 정성다린 오미자차 40g 티백 지퍼백">
</div>
<div class="product_info">
<strong class="title">
[오대산 식품] 정성다린 오미자차 40g 티백 지퍼백
</strong>
<div class="price">
<strong>12,000</strong>원
<span class="price_sub">무료배송</span>
</div>
<div class="elss store">
<span class="ico_area">
<i class="spnew api_ico_npay_plus">네이버페이 플러스</i>
</span>
DrechoFarm
</div>
</div>
</a>
</li>
|
goOtherCR 함수 |
function goOtherCR(o, p) { return goCR(o, p, false); } |
goCR 함수 |
function goCR(o, p, t) { var p0 = o.getAttribute && o.getAttribute("crp"), u = o.href, u0 = u; if (p0 && u.indexOf(p0) > 0 && u.match(/\/(rd|nr)\?/)) { u = u0 = o.getAttribute && o.getAttribute("cru") || u; p = p0; } p0 = p; if (p.indexOf("u=javascript") >= 0 || p.indexOf("u=tel%3A") >= 0) t = true; /* no frame/iframe but new window */ var n = (o.ownerDocument == document && o.target && o.target != "_self" && o.target != "_parent" && o.target != "_top"); var cr = getCRRanking(p); if (cr > 0) p = p + "&cr=" + cr; u = nxGetCRURL(t ? 0 : (n ? -1 : 1), p, u); if (u && !u.match(/m=0&/)) { if (o.setAttribute) { if (p0) o.setAttribute("crp", p0); if (u0) o.setAttribute("cru", u0); if (g_D && naver.search.https && naver.search.meta_referrer && o.href && isOutlink(o.href)) o.setAttribute("rel", "noreferrer"); } var a = o.innerHTML; o.href = u; if (o.innerHTML != a) o.innerHTML = a; } else if (document.images)(new Image()).src = u; return true; } |
getCRRanking 함수 |
function getCRRanking(p) { if (typeof naver.search.section == 'undefined' || typeof naver.search.section.main == 'undefined') return 0; var cr = 0; var info = naver.search.section.main; try { var y, z; var y = p.split('&'); for (var i = 0; i < y.length; i++) { if (z = y[i].split('=')) { if (z[0] == 'a') { for (var j = 0; j < info.length; j++) { var a = info[j].area.split(/[*.]/)[0]; if (z[1].substr(0, a.length) == a) { cr = j + 1; break; } } break; } } } } catch (e) {} return cr; } |
nxGetCRURL 함수 |
function nxGetCRURL(m, a, b, c, d, e) { var p = ""; var u; if (c == undefined && d == undefined && e == undefined) { p = (a == undefined ? "" : "&" + a) + (b == undefined || a.indexOf("u=") == 0 || a.indexOf("&u=") > 0 ? "" : "&u=" + urlencode(b)); u = b; } else { p = (a == undefined ? "" : "&a=" + urlencode(a)) + (b == undefined ? "" : "&r=" + urlencode(b)) + (c == undefined ? "" : "&i=" + urlencode(c)) + (d == undefined ? "" : "&u=" + urlencode(d)) + (e == undefined ? "" : "&" + e); u = d; } if (!p) return null; if (0 && u && u.indexOf("/search.naver?") >= 0) { var str = ""; p = p.replace(/((?:(?:^|&)u=)[^&]*%2Fsearch.naver%3F(?:[^%&]|%[^2]|%2[^3])*)/, '$1' + str); } var url; if (naver.search.https) { url = (naver.search.meta_referrer ? "/p/crd" : "/p/cr") + "/rd"; if (m != 0) m = 1; } else { out = isOutlink(u); url = "http://cr.naver.com" + (g_D && out ? "/nr" : "/rd"); if (m != 0) m = g_D && out ? 2 : 1; } url += "?m=" + m + "&" + cpip() + "&" + nxGetCommonCRParam() + p; return url; } |
nxGetCommonCRParam 함수 |
function nxGetCommonCRParam() { var csdark_param = naver.search.csdark === 1 ? "&stm=dark" : ""; if (nxIsValidateBridgeCommonCRParam()) { var param = g_BridgeCommonCRParam; return "p=" + urlencode(param.g_puid) + "&q=" + urlencode(param.g_query) + "&ie=utf8&rev=1&ssc=" + urlencode(param.g_ssc) + "&f=" + urlencode(param.g_tab) + "&w=" + urlencode(param.g_stab) + "&s=" + urlencode(param.g_suid) + "&time=" + urlencode((new Date()).getTime()) + param.g_crt + csdark_param; } else { return "p=" + urlencode(g_puid) + "&q=" + urlencode(g_query) + "&ie=utf8&rev=1&ssc=" + urlencode(g_ssc) + "&f=" + urlencode(g_tab) + "&w=" + urlencode(g_stab) + "&s=" + urlencode(g_suid) + "&time=" + urlencode((new Date()).getTime()) + g_crt + csdark_param; } } |
urlencode 함수 |
function urlencode(q) { return encodeURIComponent(q).replace(/%20/g, "+").replace(/[!~'()]/g, function(c) { return '%' + c.charCodeAt(0).toString(16).toUpperCase(); }); } |
g_BridgeCommonCRParam 외 전역변수 |
var g_BridgeCommonCRParam = { g_puid: null, g_ssc: null, g_query: null, g_tab: null, g_stab: null, g_suid: null, g_crt: null }; var g_D = 0; |