php实现抓取淘宝商品价格人气源码
寒假在家无聊想看一下淘宝相关开发怎么样,注册了个淘宝开发者,然后想调api的时候,发现还要很多很复杂的步骤,而且有的还收费,太尼玛坑爹了,于是自己尝试抓了一些淘宝的数据,做了自己的api。
其中获取商品人气,也就是收藏人数,目前只支持淘宝商品,不支持天猫,获取人气、商品名是淘宝和天猫都支持的,但是由于是抓取的淘宝的缓存文件,所以。。。有可能会出现一些问题,但我测试过程中还没遇到问题。
如果大家在使用过程中发现问题,欢迎与我联系,我会进行改进。
我的联系方式:
- 微博:http://weibo.com/578013333
- 邮箱:leiflyy@outlook.com
同时,我也正在计划做一些其他的,比如已经实现的获取商品图片,我觉得用处不大。。。所以,下一版再加。
好了,不废话了,,上源码
<code><span><span><?php </span><span>/** * Created by PhpStorm. * User: leif * Date: 16/1/26 * Time: 10:17 * email: leiflyy@outlook.com */</span><span>/** * 实现传入宝贝的id,返回宝贝的链接,支持淘宝 *<span> @param</span> $id 宝贝的id *<span> @return</span> string 返回的宝贝的链接 */</span><span><span>function</span><span>getTbLink</span><span>(<span>$id</span>)</span>{</span><span>$url</span>=<span>"https://item.taobao.com/item.htm?spm=a1z10.4-c.w5003-12641268955.30.0lDnKZ&id="</span>.<span>$id</span>.<span>"&scene=taobao_shop"</span>; <span>return</span><span>$url</span>; } <span>/** * 实现传入宝贝的id,获取宝贝的商品名,支持淘宝和天猫 *<span> @param</span> $id 宝贝的id *<span> @return</span> mixed 宝贝的商品名 */</span><span><span>function</span><span>getNameById</span><span>(<span>$id</span>)</span>{</span><span>$url</span>=<span>"http://hws.m.taobao.com/cache/wdetail/5.0/?id="</span>.<span>$id</span>; <span>$content</span>=file_get_contents(<span>$url</span>); <span>$content_ori</span>=strip_tags(<span>$content</span>); <span>$content_arr</span>=json_decode(<span>$content_ori</span>,<span>true</span>); <span>$detail</span>=json_decode(<span>$content_arr</span>[<span>'data'</span>][<span>'apiStack'</span>][<span>'0'</span>][<span>'value'</span>],<span>true</span>); <span>$success_sym</span>=<span>$detail</span>[<span>'ret'</span>][<span>'0'</span>];<span>//成功则返回"SUCCESS::调用成功";</span><span>if</span>(<span>$success_sym</span>==<span>"SUCCESS::调用成功"</span>){ <span>$name</span>=<span>$content_arr</span>[<span>'data'</span>][<span>'itemInfoModel'</span>][<span>'title'</span>]; <span>return</span><span>$name</span>; }<span>else</span>{ <span>return</span><span>"<script type="text/javascript">alert('宝贝不存在!');</script>"</span>; } } <span>/** * 实现传入宝贝id,获取宝贝价格,支持淘宝和天猫 *<span> @param</span> $id 宝贝的id *<span> @return</span> mixed 返回的宝贝的价格或价格区间 */</span><span><span>function</span><span>getPriceById</span><span>(<span>$id</span>)</span>{</span><span>$url</span>=<span>"http://hws.m.taobao.com/cache/wdetail/5.0/?id="</span>.<span>$id</span>; <span>$content</span>=file_get_contents(<span>$url</span>); <span>$content_ori</span>=strip_tags(<span>$content</span>); <span>$content_arr</span>=json_decode(<span>$content_ori</span>,<span>true</span>); <span>$pro_detail</span>=json_decode(<span>$content_arr</span>[<span>'data'</span>][<span>'apiStack'</span>][<span>'0'</span>][<span>'value'</span>],<span>true</span>); <span>$success_sym</span>=<span>$pro_detail</span>[<span>'ret'</span>][<span>'0'</span>];<span>//成功则返回"SUCCESS::调用成功";</span><span>if</span>(<span>$success_sym</span>==<span>"SUCCESS::调用成功"</span>){ <span>$pro_price</span>=<span>$pro_detail</span>[<span>'data'</span>][<span>'itemInfoModel'</span>][<span>'priceUnits'</span>][<span>'0'</span>][<span>'price'</span>]; <span>return</span><span>$pro_price</span>; }<span>else</span>{ <span>return</span><span>"<script type="text/javascript">alert('宝贝不存在!');</script>"</span>; } } <span>/** * 实现传入宝贝id,获取宝贝的收藏人数(人气),支持淘宝 *<span> @param</span> $id 宝贝id *<span> @return</span> mixed 返回的宝贝的收藏人数(人气) */</span><span><span>function</span><span>getPopById</span><span>(<span>$id</span>)</span>{</span><span>$url</span>=getTbLink(<span>$id</span>); <span>$urlinfo</span> = parse_url(<span>$url</span>); parse_str(<span>$urlinfo</span>[<span>'query'</span>], <span>$query</span>); <span>$id</span> = <span>$query</span>[<span>'id'</span>]; <span>$data</span> = file_get_contents(<span>$url</span>); <span>$start</span> = strpos(<span>$data</span>, <span>'counterApi'</span>); <span>$start</span> = strpos(<span>$data</span>, <span>": "</span>, <span>$start</span>); <span>$end</span> = strpos(<span>$data</span>, <span>"',"</span>, <span>$start</span>); <span>$api</span> = <span>'https:'</span> . substr(<span>$data</span>, <span>$start</span> + <span>3</span>, <span>$end</span> - <span>$start</span> - <span>3</span>) . <span>'&callback=jsonp107'</span>; <span>$response</span> = file_get_contents(<span>$api</span>); <span>$response</span> = substr(<span>$response</span>, <span>9</span>, -<span>2</span>); <span>$arr</span> = json_decode(<span>$response</span>, <span>true</span>); <span>$popularity</span>=<span>$arr</span>[<span>'ICCP_1_'</span>.<span>$id</span>]; <span>return</span><span>$popularity</span>; }</span></span></code>
以上就介绍了php实现抓取淘宝商品价格人气源码,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wenn Sie sich mit der AppleID beim iTunesStore anmelden, wird möglicherweise die Fehlermeldung „Diese AppleID wurde nicht im iTunesStore verwendet“ auf dem Bildschirm angezeigt. Es gibt keine Fehlermeldungen, über die Sie sich Sorgen machen müssen. Sie können sie beheben, indem Sie diese Lösungssätze befolgen. Fix 1 – Lieferadresse ändern Der Hauptgrund, warum diese Aufforderung im iTunes Store erscheint, ist, dass Sie nicht die richtige Adresse in Ihrem AppleID-Profil haben. Schritt 1 – Öffnen Sie zunächst die iPhone-Einstellungen auf Ihrem iPhone. Schritt 2 – AppleID sollte über allen anderen Einstellungen stehen. Also, öffnen Sie es. Schritt 3 – Öffnen Sie dort die Option „Zahlung & Versand“. Schritt 4 – Bestätigen Sie Ihren Zugang mit Face ID. Schritt

Wenn Sie in der Ereignisanzeige von Windows 11/10 die Ereignis-ID 55, 50, 140 oder 98 finden oder auf einen Fehler stoßen, dass die Dateisystemstruktur der Festplatte beschädigt ist und nicht verwendet werden kann, befolgen Sie bitte die nachstehende Anleitung, um das Problem zu beheben. Was bedeutet Ereignis 55, Dateisystemstruktur auf der Festplatte beschädigt und unbrauchbar? Bei Sitzung 55 ist die Dateisystemstruktur auf der Ntfs-Festplatte beschädigt und unbrauchbar. Bitte führen Sie das Dienstprogramm chkMSK auf dem Volume aus. Wenn NTFS keine Daten in das Transaktionsprotokoll schreiben kann, wird ein Fehler mit der Ereignis-ID 55 ausgelöst, der dazu führt, dass NTFS den Vorgang nicht abschließen kann und die Transaktionsdaten nicht schreiben kann. Dieser Fehler tritt normalerweise auf, wenn das Dateisystem beschädigt ist, möglicherweise aufgrund fehlerhafter Sektoren auf der Festplatte oder aufgrund der Unzulänglichkeit des Dateisystems im Festplattensubsystem.

Sobald Sie in der Alibaba-Software erfolgreich ein Konto registriert haben, weist Ihnen das System eine eindeutige ID zu, die als Ihre Identität auf der Plattform dient. Viele Benutzer möchten jedoch ihre ID abfragen, wissen aber nicht, wie das geht. Dann wird Ihnen der Herausgeber dieser Website unten eine detaillierte Einführung in die Strategieschritte geben. Ich hoffe, es kann Ihnen helfen! Wo finde ich die Antwort auf die Alibaba-ID: [Alibaba]-[My]. 1. Öffnen Sie zuerst die Alibaba-Software. Nachdem Sie die Startseite aufgerufen haben, müssen Sie auf [Mein] in der unteren rechten Ecke klicken. 2. Nachdem wir zur „Mein“-Seite gelangt sind, können wir oben auf der Seite [ID] sehen Ist die ID dieselbe wie die Taobao-ID? Alibaba ID und Taobao ID sind unterschiedlich, aber die beiden

Die Verwendung von return in der C-Sprache ist: 1. Für Funktionen, deren Rückgabewerttyp ungültig ist, können Sie die Rückgabeanweisung verwenden, um die Ausführung der Funktion vorzeitig zu beenden. 2. Für Funktionen, deren Rückgabewerttyp nicht ungültig ist, ist die Funktion von Die Return-Anweisung dient dazu, die Ausführung der Funktion zu beenden. 3. Beenden Sie die Ausführung der Funktion vorzeitig wenn die Funktion keinen Wert zurückgibt.
![Ereignis-ID 4660: Objekt gelöscht [Fix]](https://img.php.cn/upload/article/000/887/227/168834320512143.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Einige unserer Leser sind auf das Ereignis ID4660 gestoßen. Sie sind sich oft nicht sicher, was sie tun sollen, deshalb erklären wir es in diesem Leitfaden. Die Ereignis-ID 4660 wird normalerweise protokolliert, wenn ein Objekt gelöscht wird. Daher werden wir auch einige praktische Möglichkeiten zur Behebung des Problems auf Ihrem Computer untersuchen. Was ist Ereignis-ID4660? Die Ereignis-ID 4660 bezieht sich auf Objekte in Active Directory und wird durch einen der folgenden Faktoren ausgelöst: Objektlöschung – Ein Sicherheitsereignis mit der Ereignis-ID 4660 wird protokolliert, wenn ein Objekt aus Active Directory gelöscht wird. Manuelle Änderungen – Die Ereignis-ID 4660 kann generiert werden, wenn ein Benutzer oder Administrator die Berechtigungen eines Objekts manuell ändert. Dies kann passieren, wenn Sie Berechtigungseinstellungen ändern, Zugriffsebenen ändern oder Personen oder Gruppen hinzufügen oder entfernen

Wo kann ich die Tencent-Video-ID überprüfen? Es gibt eine exklusive ID in der Tencent-Video-App, aber die meisten Benutzer wissen nicht, wie sie die Tencent-Video-ID überprüfen können. Als Nächstes finden Sie die grafische Anleitung zum Überprüfen der Tencent-Video-ID Editor für interessierte Benutzer. Schauen Sie vorbei! Tencent Video-Nutzungsanleitung Wo Sie die Tencent Video-ID überprüfen können 1. Öffnen Sie zunächst die Tencent Video-App und betreten Sie den speziellen Bereich über [Personal Center] in der unteren rechten Ecke der Hauptseite. 2. Rufen Sie dann die Seite „Personal Center“ auf und wählen Sie [; 3. Gehen Sie dann zur Seite „Einstellungen“ und klicken Sie unten auf „Konto verlassen“. 4. Schließlich können Sie die exklusive ID-Nummer auf der unten gezeigten Seite anzeigen.

Die Erfolgsmethode in PHP wird verwendet, um eine Erfolgsmeldung anzuzeigen. Ihre Verwendungssyntax lautet „Success('...','Http://www.xxx.com/Admin/User/Index');“, wenn wir dies tun Wenn Sie keine URL schreiben, ermittelt das System, ob eine vorherige Seite vorhanden ist, und springt zur vorherigen Seite, andernfalls wird nicht gesprungen.

Quellcode: publicclassReturnFinallyDemo{publicstaticvoidmain(String[]args){System.out.println(case1());}publicstaticintcase1(){intx;try{x=1;returnx;}finally{x=3;}}}# Ausgabe Die Ausgabe des obigen Codes kann einfach zu dem Schluss kommen: return wird ausgeführt, bevor wir uns schließlich ansehen, was auf der Bytecode-Ebene passiert. Im Folgenden wird ein Teil des Bytecodes der Methode case1 abgefangen und mit dem Quellcode verglichen, um die Bedeutung jeder Anweisung darin zu kommentieren
