探讨file_get_contents与curl效率及稳定性的分析_PHP教程
做过好多抓取别家网站内容的产品,习惯了使用方便快捷的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函数,不但稳定速度快,还能假冒浏览器欺骗目标地址哦!

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



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“.

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.

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

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.

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.

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

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

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.
