如何使循环更改URL

时间:2018-03-02 18:22:14

标签: php regex loops for-loop

基本上我正在尝试从给定的URL解析IMDB ID。尝试进行循环以更改页码并继续抓取IMDB TT。

我期望变量$ page增加1,所以$ url会改变,每个循环中的foreach函数都会收到一个新的url并再次开始抓取。

但问题是:循环只解析一页无限次,页码不会增加1。

 'srt_akademik.*' => 'required|mimes:jpeg,bmp,png,jpg'

示例:http://surveygun.com/tt.php

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的方法,将$ i< = num更改为您想要循环的每个页面的数量。

for( $i= 1 ; $i <= 165 ; $i++ ){
  $url   = 'http://www.imdb.com/search/title?genres=animation&page='.$i.'';

  // some code here

  sleep(2);
}

更新(没有欺骗):

<?php
 for( $i= 1 ; $i <= 5 ; $i++ ){
 $url = "http://www.imdb.com/search/title?genres=animation&page=$i";
 $page = file_get_contents($url);
   preg_match_all("/id=\"sb_(tt\d{7})/", $page, $idinfo, PREG_SET_ORDER);
   foreach($idinfo as $idnumber){
   $idnumber = $idnumber[1];
   echo $idnumber.'<br>';
 }}
?>

您可以考虑在循环之间进行睡眠作为礼貌措施,即睡眠(2);这会让它睡2秒钟。