Heim Backend-Entwicklung PHP-Tutorial 探讨file_get_contents与curl效率及稳定性的分析_PHP教程

探讨file_get_contents与curl效率及稳定性的分析_PHP教程

Jul 21, 2016 pm 03:08 PM
curl file get Und 内容 分析 抓取 探讨 效率 稳定 网站

做过好多抓取别家网站内容的产品,习惯了使用方便快捷的file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的例子设置了超时,可多数时候不会奏效:

复制代码 代码如下:

$config['context'] = stream_context_create(array(‘http' => array(‘method' => “GET”,
   'timeout' => 5//这个超时时间不稳定,经常不奏效
   )
  ));

这时候,看一下服务器的连接池,会发现一堆类似的错误,让你头疼万分:
file_get_contents(http://***): failed to open stream…
不得已,安装了curl库,写了一个函数替换:
复制代码 代码如下:

function curl_file_get_contents($durl){
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $durl);
   curl_setopt($ch, CURLOPT_TIMEOUT, 5);
   curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);
   curl_setopt($ch, CURLOPT_REFERER,_REFERER_);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   $r = curl_exec($ch);
   curl_close($ch);
   return $r;
 }

如此,除了真正的网络问题外,没再出现任何问题。
这是别人做过的关于curl和file_get_contents的测试:
file_get_contents抓取google.com需用秒数:
2.31319094
2.30374217
2.21512604
3.30553889
2.30124092
curl使用的时间:
0.68719101
0.64675593
0.64326
0.81983113
0.63956594
差距很大吧?呵呵,从我使用的经验来说,这两个工具不只是速度有差异,稳定性也相差很大。建议对网络数据抓取稳定性要求比较高的朋友使用上面的curl_file_get_contents函数,不但稳定速度快,还能假冒浏览器欺骗目标地址哦!

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/327449.htmlTechArticle做过好多抓取别家网站内容的产品,习惯了使用方便快捷的file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的例子设...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie richte ich die Cheat Engine auf Chinesisch ein? Cheat Engine-Einstellung chinesische Methode Wie richte ich die Cheat Engine auf Chinesisch ein? Cheat Engine-Einstellung chinesische Methode Mar 13, 2024 pm 04:49 PM

CheatEngine ist ein Spieleeditor, der den Speicher des Spiels bearbeiten und ändern kann. Die Standardsprache ist jedoch nicht Chinesisch, was für viele Freunde unpraktisch ist. Wie stellt man Chinesisch in CheatEngine ein? Heute gibt Ihnen der Herausgeber eine detaillierte Einführung in die Einrichtung von Chinesisch in CheatEngine. Ich hoffe, es kann Ihnen helfen. Einstellungsmethode eins: 1. Doppelklicken Sie, um die Software zu öffnen, und klicken Sie oben links auf „Bearbeiten“. 2. Klicken Sie dann in der Optionsliste unten auf „Einstellungen“. 3. Klicken Sie in der geöffneten Fensteroberfläche in der linken Spalte auf „Sprachen“.

Privater Einsatz von Stable Diffusion zum Spielen mit KI-Zeichnung Privater Einsatz von Stable Diffusion zum Spielen mit KI-Zeichnung Mar 12, 2024 pm 05:49 PM

StableDiffusion ist ein Open-Source-Deep-Learning-Modell. Seine Hauptfunktion besteht in der Generierung hochwertiger Bilder durch Textbeschreibungen und unterstützt Funktionen wie Diagrammgenerierung, Modellzusammenführung und Modelltraining. Die Bedienoberfläche des Modells ist in der Abbildung unten zu sehen. So erstellen Sie ein Bild: Beim Erstellen eines Bildes wird es in Aufforderungswörter und negative Aufforderungswörter unterteilt Versuchen Sie, die gewünschte Szene, das gewünschte Objekt, den gewünschten Stil und die gewünschte Farbe klar zu beschreiben. Anstatt nur zu sagen: „Der Hirsch trinkt Wasser“, heißt es „ein Bach, umgeben von dichten Bäumen, und neben dem Bach gibt es Hirsche, die Wasser trinken“. Die negativen Aufforderungswörter lauten beispielsweise in der entgegengesetzten Richtung: Keine Gebäude, keine Menschen, keine Brücken, keine Zäune und eine zu vage Beschreibung können zu ungenauen Ergebnissen führen.

Analyse der Gründe, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann Analyse der Gründe, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann Mar 13, 2024 pm 06:24 PM

Titel: Analyse der Gründe und Lösungen, warum das sekundäre Verzeichnis von DreamWeaver CMS nicht geöffnet werden kann. Dreamweaver CMS (DedeCMS) ist ein leistungsstarkes Open-Source-Content-Management-System, das häufig bei der Erstellung verschiedener Websites verwendet wird. Allerdings kann es beim Erstellen einer Website manchmal vorkommen, dass das sekundäre Verzeichnis nicht geöffnet werden kann, was zu Problemen beim normalen Betrieb der Website führt. In diesem Artikel analysieren wir die möglichen Gründe, warum das sekundäre Verzeichnis nicht geöffnet werden kann, und stellen spezifische Codebeispiele zur Lösung dieses Problems bereit. 1. Mögliche Ursachenanalyse: Pseudostatisches Regelkonfigurationsproblem: während der Verwendung

Beispiel für den Curl Get-Befehl Beispiel für den Curl Get-Befehl Mar 20, 2024 pm 06:56 PM

Unter Linux ist der URL- oder Curl-Client ein beliebtes Befehlszeilenprogramm, mit dem Sie Daten über das Netzwerk mithilfe verschiedener Protokolle wie HTTPS, HTTP, FTP usw. übertragen können. Es ermöglicht Ihnen das Senden und Empfangen von Daten mithilfe der Get-, Post- und Request-Methoden. Unter anderem müssen Sie die Methode „get“ häufig verwenden. Daher ist es wichtig, verschiedene Methoden und Optionen zu erlernen, mit denen Sie Ihre Produktivität steigern können. „Das Ausführen einer Curl-Operation ist so einfach wie die Eingabe einiger einfacher Befehle. Obwohl es einfach erscheint, erkennen viele Benutzer sein Potenzial nicht vollständig. Daher bietet diese kurze Anleitung einige Informationen zum Ausführen von Curl-Operationen auf Linux-Systemen. Beispiel mit „ Curlget“-Befehl „Curl.

Analysieren Sie, ob die Hauptprogrammiersprache von Tencent Go ist Analysieren Sie, ob die Hauptprogrammiersprache von Tencent Go ist Mar 27, 2024 pm 04:21 PM

Titel: Ist Tencents wichtigste Programmiersprache Go: Eine eingehende Analyse Als Chinas führendes Technologieunternehmen hat Tencent bei der Auswahl seiner Programmiersprachen schon immer große Aufmerksamkeit auf sich gezogen. In den letzten Jahren glauben einige Leute, dass Tencent hauptsächlich Go als Hauptprogrammiersprache übernommen hat. In diesem Artikel wird eine eingehende Analyse durchgeführt, ob die Hauptprogrammiersprache von Tencent Go ist, und es werden konkrete Codebeispiele angegeben, um diese Ansicht zu untermauern. 1. Anwendung der Go-Sprache in Tencent Go ist eine von Google entwickelte Open-Source-Programmiersprache. Viele Entwickler schätzen ihre Effizienz, Parallelität und Einfachheit.

Warum ist Vanar Chain nach mehreren Transformationen und der Zusammenarbeit mit dem KI-Riesen Nvidia innerhalb von 30 Tagen um das 4,6-fache gestiegen? Warum ist Vanar Chain nach mehreren Transformationen und der Zusammenarbeit mit dem KI-Riesen Nvidia innerhalb von 30 Tagen um das 4,6-fache gestiegen? Mar 15, 2024 am 10:46 AM

In letzter Zeit hat die Layer-1-Blockchain VanarChain aufgrund ihrer hohen Wachstumsrate und der Zusammenarbeit mit dem KI-Riesen NVIDIA die Aufmerksamkeit des Marktes auf sich gezogen. Hinter der Popularität von VanarChain stehen nicht nur zahlreiche Markentransformationen, sondern auch beliebte Konzepte wie Hauptspiele, Metaverse und KI, die dem Projekt viel Popularität und Themen eingebracht haben. Vor seiner Umwandlung war Vanar der Vorgänger von TerraVirtua, einem 2018 gegründeten Unternehmen. Ursprünglich handelte es sich um eine Plattform, die kostenpflichtige, abonnementbasierte Virtual-Reality- (VR) und Augmented-Reality-(AR)-Inhalte bereitstellte und Kryptowährungszahlungen unterstützte. Das Unternehmen wurde von den Mitbegründern Gary Bracey und Jawad Ashraf gegründet, darunter Gary Brac

Usability-Analyse des Hongmeng-Systems anhand des tatsächlichen Betriebs Usability-Analyse des Hongmeng-Systems anhand des tatsächlichen Betriebs Mar 23, 2024 am 08:21 AM

Als Betriebssystem, das in den letzten Jahren viel Aufmerksamkeit erregt hat, hat das Hongmeng-System viel Aufmerksamkeit auf sich gezogen. Hongmeng OS wird als alternatives System gefeiert, das Huawei als Reaktion auf das Verbot des Android-Systems eingeführt hat. Es bietet die Vorteile einer unabhängigen Steuerbarkeit und einer plattformübergreifenden Funktion. Die Qualität eines Systems hängt jedoch nicht nur von seiner technischen Stärke ab, sondern vor allem von der Benutzererfahrung, also der Benutzerfreundlichkeit. In diesem Artikel wird die Benutzerfreundlichkeit des Hongmeng-Systems aus der Perspektive des tatsächlichen Betriebs analysiert. 1. Installation und Einstellungen Die Installation und Einstellungen des Hongmeng-Systems sind relativ einfach und für normale Benutzer nicht kompliziert. Während der Installation

Analyse des DEX-Layouts von Solana: Ist Jupiter die Zukunft der Ökologie? Analyse des DEX-Layouts von Solana: Ist Jupiter die Zukunft der Ökologie? Mar 26, 2024 pm 02:10 PM

Quelle: Shenchao TechFlow Als hochkarätiges aufstrebendes Projekt im Solana-Ökosystem hat sich Jupiter trotz seines kurzen Starts schnell im DeFi-Bereich etabliert. Doch selbst in einem sich so schnell entwickelnden Umfeld sind die Verbesserung der Wirtschaftsmodelle und die Stabilität der Token-Preise immer noch von entscheidender Bedeutung. Ohne diese Unterstützung kann ein Projekt leicht in einen Teufelskreis geraten, der letztendlich zum Niedergang oder sogar zur Unfähigkeit, sich selbst zu tragen, führen kann. Daher muss Jupiter sein wirtschaftliches Design kontinuierlich optimieren und die Stabilität der Token-Preise gewährleisten, um die langfristige Entwicklung und den Erfolg des Projekts sicherzustellen. Die Solana-Kette hat in der vergangenen Woche eine starke Leistung gezeigt, wobei ihr Token SOL auf dem Sekundärmarkt schnell gestiegen ist, und auch Jupiters Token $JUP ist in den letzten zwei Wochen gestiegen.

See all articles