Lesen Programmierer immer noch Romane mit Werbung?
Manche Leute sind es gewohnt, Romane zu lesen und lesen gelegentlich ein paar Kapitel. Sie werden alle von Baidu veröffentlicht, aber im Grunde gibt es sehr nervige Anzeigen, und wenn sie versehentlich berührt werden, werden sie angezeigt Springen Sie zu einigen Websites oder sogar zu Endlosschleifen. Einige mobile Apps enthalten auch viele Anzeigen. Daher bleibt mir nichts anderes übrig, als ein kleines Programm zu schreiben, um den Ärger mit Anzeigen zu vermeiden.
Dieser Artikel verwendet php Curl, um die Seitensimple_html_dom-Analyse zu erfassen, um eine echte Werbeentfernung zu erreichen.
Suchen Sie auf jeder Roman-Website nach einem Buch, aber diese Website ist aufgrund der oben genannten Probleme auf Mobiltelefonen besonders schwierig:
Nehmen Sie einfach diesen Roman werde die Operation durchführen. (Haftungsausschluss: Hierbei handelt es sich definitiv nicht um Werbung, Rechtsverletzung oder Löschung)
1. Verstehen Sie die Get-Methode von Curl
Curl ist ein Befehlszeilentool, das Uploads oder Downloads durchführt die angegebenen URL-Daten und zeigt die Daten an. Das c in Curl bedeutet Client und URL ist die URL.
Mit cURL in PHP können Get- und Post-Anfragemethoden implementiert werden
Einfaches Grabbing von Romanen erfordert nur die Get-Methode.
Der folgende Beispielcode ist ein Beispiel für den Erhalt des HTML-Codes der Romanseite des ersten Kapitels über eine Get-Anfrage. Sie müssen nur die URL-Parameter ändern.
Initialisierung, Einstellungsoptionen, Zertifikatsüberprüfung, Ausführung, Herunterfahren
<?php header("Content-Type:text/html;charset=utf-8"); $url="https://www.7kzw.com/85/85445/27248636.html"; $ch = curl_init($url); //初始化 //设置选项 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//获取的信息以字符串返回,而不是直接输出(必须) curl_setopt($ch,CURLOPT_TIMEOUT,10);//超时时间(必须) curl_setopt($ch, CURLOPT_HEADER,0);// 启用时会将头文件的信息作为数据流输出。 //参数为1表示输出信息头,为0表示不输出 curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); //不验证证书 // 3.执行 $res = curl_exec($ch); // 4.关闭 curl_close($ch); print_r($res); ?>
Befolgen Sie die Schritte zum Senden einer Curl-Get-Anfrage Post-Anfrage, dann müssen Sie eine zusätzliche Einstellung hinzufügen, um die Post-Option festzulegen, Parameter zu übergeben und schließlich die erhaltenen Informationen auszugeben. Die laufenden Ergebnisse sind wie folgt, und es gibt kein CSS-Rendering.
2. Analysieren Sie die Seite
Die Ausgabeseite enthält viele unnötige Inhalte, die extrahiert werden müssen Aus dem gesamten Inhalt Um den Inhalt zu erhalten, den wir benötigen, z. B. den Titel und den Inhalt jedes Kapitels, müssen wir die Seite analysieren.
Es gibt viele Möglichkeiten, eine Seite zu analysieren. Hier müssen Sie die Klasse simple_html_dom.php und das Instanzobjekt herunterladen und darauf verweisen. Informationen zu bestimmten Methoden finden Sie auf der offiziellen Website oder in anderen Dokumenten auf der chinesischen Website.
Analysieren Sie zunächst den Quellcode dieser Romanseite und sehen Sie sich die Elemente an, die dem Titel und Inhalt dieses Kapitels entsprechen.
Das erste ist der Titel: unter h1 unter dem Klassenbuchnamen
Dann der Inhalt: Unter dem Div mit der ID des Inhalts kann
simple_html_dom das verwenden find-Methode, ähnlich wie jquery. Der Selektor findet das positionierte Element. Zum Beispiel:
find('.bookname h1'); //Suchen Sie das h1-Titelelement unter der Klasse bookname
find('#content'); Finden Sie den Kapitelinhalt mit der ID des Inhalts
Der Code wird basierend auf dem oben Gesagten hinzugefügt:
include "simple_html_dom.php"; $html = new simple_html_dom(); @$html->load($res); $h1 = $html->find('.bookname h1'); foreach ($h1 as $k=>$v) { $artic['title'] = $v->innertext; } // 查找小说的具体内容 $divs = $html->find('#content'); foreach ($divs as $k=>$v) { $content = $v->innertext; } // 正则替换去除多余部分 $pattern = "/(<p>.*?<\/p>)|(<div .*?>.*?<\/div>)/"; $artic['content'] = preg_replace($pattern,'',$content); echo $artic['title'].'<br>'; echo $artic['content'];
Der durch die obige Analysemethode erhaltene Inhalt ist Verwenden Sie in einem Array foreach, um den Inhalt des Arrays zu erhalten. Durch regelmäßiges Ersetzen werden die Textanzeigen im Text entfernt und der Titel und der Inhalt des Romans in das Array eingefügt. Der einfachste Weg, es zu schreiben, ist fertig. Die laufenden Ergebnisse lauten wie folgt:
Natürlich sieht diese Schreibweise unbequem aus, Sie können die Funktionsklasse selbst kapseln. Das Folgende ist ein Codebeispiel, das ich selbst geschrieben habe. Natürlich gibt es definitiv Mängel, aber es kann als Referenz für die Erweiterung verwendet werden.
<?php include "simple_html_dom.php"; include "mySpClass.php"; header("Content-Type:text/html;charset=utf-8"); $get_html = get_html($_GET['n']); $artic = getContent($get_html); echo $artic['title'].'<br>'; echo $artic['content']; /** * 获取www.7kzw.com 获取每一章的页面html * @param type $num 第几章,从第一开始(int) * @return 返回字符串 */ function get_html($num){ $start = 27248636; $real_num = $num+$start-1; $url = 'https://www.7kzw.com/85/85445/'.$real_num.'.html'; $header = [ 'User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0' ]; return mySpClass()->getCurl($url,$header); } /** * 获取www.7kzw.com小说标题数组 * @param type $get_html 得到的每一章的页面html * @return 返回$artic数组,['title'=>'','content'=>''] */ function getContent($get_html){ $html = new simple_html_dom(); @$html->load($get_html); $h1 = $html->find('.bookname h1'); foreach ($h1 as $k=>$v) { $artic['title'] = $v->innertext; } // 查找小说的具体内容 $divs = $html->find('#content'); foreach ($divs as $k=>$v) { $content = $v->innertext; } // 正则替换去除多余部分 $pattern = "/(<p>.*?<\/p>)|(<div .*?>.*?<\/div>)/"; $artic['content'] = preg_replace($pattern,'',$content); return $artic; } ?>
Das Endergebnis des obigen Beispielcodes: Geben Sie die Nummer im Kapitel ein und übergeben Sie die Parameter über $_GET['n']
Zusammenfassung:
Wissenspunkte: Curl (Tipps: Curl-Modul sammelt jede PHP-Klasse für Webseiten ), reguläres Parsing-Tool simple_html_dom
Obwohl Die Schreibmethode wurde zunächst verbessert, aber es ist am besten, einen eigenen Server bereitzustellen, um die besten Ergebnisse zu erzielen. Andernfalls können Sie es nur auf einem Computer ansehen, was nicht sehr praktisch ist. Sie sind möglicherweise eher bereit, Werbung zu tolerieren.
Im Folgenden finden Sie Einzelheiten zur Verwendung von PHP Curl zum Sammeln von Seiten und zur Verwendung von Simple_HTML_DOM zum Parsen. Weitere Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonLesen Programmierer immer noch Romane mit Werbung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Am 3. März 2022, weniger als einen Monat nach der Geburt von Devin, dem weltweit ersten KI-Programmierer, entwickelte das NLP-Team der Princeton University einen Open-Source-KI-Programmierer-SWE-Agenten. Es nutzt das GPT-4-Modell, um Probleme in GitHub-Repositorys automatisch zu lösen. Die Leistung des SWE-Agenten auf dem SWE-Bench-Testsatz ist ähnlich wie die von Devin, er benötigt durchschnittlich 93 Sekunden und löst 12,29 % der Probleme. Durch die Interaktion mit einem dedizierten Terminal kann der SWE-Agent Dateiinhalte öffnen und durchsuchen, die automatische Syntaxprüfung verwenden, bestimmte Zeilen bearbeiten sowie Tests schreiben und ausführen. (Hinweis: Der obige Inhalt stellt eine geringfügige Anpassung des Originalinhalts dar, die Schlüsselinformationen im Originaltext bleiben jedoch erhalten und überschreiten nicht die angegebene Wortbeschränkung.) SWE-A

Der Reiz des Erlernens der C-Sprache: Das Potenzial von Programmierern freisetzen Mit der kontinuierlichen Weiterentwicklung der Technologie ist die Computerprogrammierung zu einem Bereich geworden, der viel Aufmerksamkeit erregt hat. Unter vielen Programmiersprachen war die Sprache C schon immer bei Programmierern beliebt. Seine Einfachheit, Effizienz und breite Anwendung machen das Erlernen der C-Sprache für viele Menschen zum ersten Schritt, um in den Bereich der Programmierung einzusteigen. In diesem Artikel geht es um den Reiz des Erlernens der C-Sprache und darum, wie man das Potenzial von Programmierern durch das Erlernen der C-Sprache freisetzt. Der Reiz des Erlernens der C-Sprache liegt zunächst einmal in ihrer Einfachheit. Im Vergleich zu anderen Programmiersprachen C-Sprache

本篇文章给大家介绍如何用前端代码实现一个烟花绽放的绚烂效果,其实主要就是用前端三剑客来实现,也就是HTML+CSS+JS,下面一起来看一下,作者会解说相应的代码,希望对需要的朋友有所帮助。

Letzte Woche haben wir eine öffentliche Live-Übertragung zum Thema „2023PHP Entrepreneurship“ durchgeführt. Viele Studenten fragten nach bestimmten Auftragsannahmeplattformen. Nachfolgend hat die chinesische Website 22 relativ zuverlässige Plattformen zusammengestellt!

Aufgaben des Programmierers: 1. Verantwortlich für den detaillierten Entwurf, die Codierung sowie die Organisation und Implementierung interner Tests von Softwareprojekten. 2. Unterstützung von Projektmanagern und zugehörigen Mitarbeitern bei der Kommunikation mit Kunden und der Pflege guter Kundenbeziehungen. 3. Teilnahme an Nachfrageforschung und Projekten Machbarkeitsanalyse, technische Machbarkeitsanalyse und Bedarfsanalyse; 4. Mit den relevanten Softwaretechnologien für die Bereitstellung von Softwareprojekten vertraut, die von der Softwareabteilung entwickelt wurden; 5. Verantwortlich für zeitnahes Feedback zu Softwareentwicklungssituationen; 6. Mitmachen; in der Softwareentwicklung und -wartung. Lösen Sie größere technische Probleme während des Prozesses. 7. Verantwortlich für die Formulierung relevanter technischer Dokumente usw.

520 naht und er ist wieder hier für die jährliche Show der quälenden Hunde! Möchten Sie sehen, wie der rationalste Code und das romantischste Geständnis kollidieren können? Lassen Sie sich nacheinander durch den vollständigsten und vollständigsten Werbecode führen, um zu sehen, ob die Romantik des Programmierers die Herzen Ihrer Göttinnen erobern kann.

Laden Sie historische Versionen von VSCode herunter und installieren Sie sie. VSCode-Installation. Download-Installationsreferenz. VSCode-Installation. Windows-Version: Windows10. VSCode-Version: VScode1.65.0 (64-Bit-Benutzerversion). Dieser Artikel

Mit Terminalemulatoren können Sie die Funktionalität eines Standard-Computerterminals emulieren. Damit können Sie Datenübertragungen durchführen und aus der Ferne auf einen anderen Computer zugreifen. In Kombination mit fortschrittlichen Betriebssystemen wie Windows 11 sind die kreativen Möglichkeiten dieser Tools endlos. Es sind jedoch viele Terminalemulatoren von Drittanbietern verfügbar. Daher ist es schwierig, das Richtige auszuwählen. Aber genau wie bei den unverzichtbaren Windows 11-Apps haben wir die besten Terminals ausgewählt, die Sie verwenden und Ihre Produktivität steigern können. Wie wählen wir den besten Terminalemulator für Windows 11 aus? Bevor wir die Tools aus dieser Liste auswählen, hat unser Expertenteam sie zunächst auf Kompatibilität mit Windows 11 getestet. Wir haben sie auch überprüft
