php用正则表达抓取网页中文章(PHP怎样用正则抓取页面中的网址的相关内容吗)
优采云 发布时间: 2022-03-08 21:12php用正则表达抓取网页中文章(PHP怎样用正则抓取页面中的网址的相关内容吗)
想知道 PHP 是如何利用规律性来爬取页面中的 URL 的吗?在本文中,我将为大家讲解PHP如何利用正则性抓取页面中的URL的相关知识和一些代码示例。欢迎阅读和指正。我们先来重点:php,正则抓取Fetch,php,页面抓取,php,抓取页面的指定内容一起来学习
前言
链接也称为超链接,是从一个元素(文本、图片、视频等)到另一个元素(文本、图片、视频等)的链接。网页中的链接一般分为三种类型。一种是绝对 URL 超链接,它是一个页面的完整链接。小路; 另一种是相对URL超链接一般链接到同一个网站的其他页面;另一种是页面内的超链接,一般链接到同一页面内的其他位置
如果你知道链接的类型,你就会知道要抓取的主要链接是绝对 URL 超链接和相对 URL 超链接。要编写正确的正则表达式,您必须了解我们要查找的对象的模式。
首先,绝对链接也称为URL(Uniform Resource Locator),它标识了互联网上的唯一资源。URL结构由三部分组成:协议、服务器名、路径和文件名
该协议是告诉浏览器如何处理要打开的文件的标识。最常见的一种是http协议。本文只考虑 HTTP 协议。至于其他的https、ftp、mailto、telnet协议等,也可以根据需要添加。
服务器名是告诉浏览器如何到达服务器的方式,通常是域名或IP地址,有时是端口号(默认为80)FTP协议也可以收录用户名和密码,其中本文不考虑)。
路径和文件名一般用/隔开,表示文件的路径和文件本身的名称。如果没有具体的文件名,则访问该文件夹下的默认文件(可以在服务器端设置)
所以现在很清楚,绝对链接爬取的典型形式可以概括为
每个部分可以使用的字符范围都有明确的规定。详细请参考RFC1738,然后可以写正则表达式。
/(http|https):\/\/([\w\d\-_]+[\.\w\d\-_]+)[:\d+]?([\/]?[\w\/\.]+)/i
解释如下: