2011-05-10 73 views
0

在下载网站上,我想抓取镜像网站的所有网址。我正在使用PHP。在下载网站上刮取页面以提取特定网址

例如,在此页:

http://drivers.softpedia.com/progDownload/Gigabyte-GA-P55A-UD3-rev-10-Intel-SATA-RAID-Preinstall-Driver-9501037-Download-99091.html 

我想提取以下网址:

http://drivers.softpedia.com/dyn-postdownload.php?p=99091&t=0&i=1 
http://drivers.softpedia.com/dyn-postdownload.php?p=99091&t=0&i=2 
+1

Wut?上述链接中的哪两处是引用了这两个镜像链接?请澄清。 – 2011-05-10 08:19:21

+1

@Pekka我已经重写了它,只是等待编辑被批准。镜像网址位于第一个网址上。 – 2011-05-10 08:23:13

+0

@Blowski啊,我现在明白了。 – 2011-05-10 08:25:39

回答

1

与尝试:

(http:\/\/drivers\.softpedia\.com\/dyn-postdownload\.php\?p=\d+&t=\d+&i=\d+) 
+0

谢谢!因为我没有逃脱元字符(?) – Thoman 2011-05-10 08:25:34

+0

@Thoman好,其中一些转义只是为'包含正则表达式。使用像'|'或'%'这样的替代字符通常会使它更易读:'preg_match_all(“%http:// drivers \ .softpedia \ .com/dyn-postdownload \ .php \?p = \ d + &t = \ d +&i = \ d +%“,$ buffer,$ matches);' – sakatc 2011-05-10 08:40:07

0

目前还不清楚在哪儿买的“t”和“i”参数来自源url,它只包含id(p)。下面的内容应该用于检索最后一组数字。

%(\d+)\.html$%