带有文件的php超时\u获取\u html

带有文件的php超时\u获取\u html,php,simple-html-dom,Php,Simple Html Dom,我一直在尝试使用简单的php html dom库从wikia网站获取一些数据。基本上,我所做的是使用WikiaAPI将其转换为html呈现并从中提取数据。提取后,我将这些数据泵入mysql数据库保存。我的问题是,通常我会拉取300条记录,并且我会在93条记录上卡住,文件\u get\u html为空,这将导致find()函数失败。我不知道为什么它会停在93个记录,但我已经尝试了各种解决方案,如 ini_set( 'default_socket_timeout', 120 ); set

我一直在尝试使用简单的php html dom库从wikia网站获取一些数据。基本上,我所做的是使用WikiaAPI将其转换为html呈现并从中提取数据。提取后,我将这些数据泵入mysql数据库保存。我的问题是,通常我会拉取300条记录,并且我会在93条记录上卡住,文件\u get\u html为空,这将导致find()函数失败。我不知道为什么它会停在93个记录,但我已经尝试了各种解决方案,如

   ini_set( 'default_socket_timeout', 120 );
   set_time_limit( 120 );
基本上,我必须访问wikia页面300次才能获得这300条记录。但大多数情况下,我会设法在文件html变为null之前获得93条记录。你知道我该如何解决这个问题吗

我也有测试旋度,也有同样的问题

function test($url){
 $ch=curl_init();
 $timeout=5;

 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

 $result=curl_exec($ch);
 curl_close($ch);
 return $result;
 }

 $baseurl = 'http://xxxx.wikia.com/index.php?';

 foreach($resultset_wiki as $name){
  // Create DOM from URL or file
 $options = array("action"=>"render","title"=>$name['name']);
 $baseurl .= http_build_query($options,'','&');
 $html = file_get_html($baseurl);
 if($html === FALSE) {
 echo "issue here";
 }
  // this code for cURL but commented for testing with file_get_html instead
  $a = test($baseurl);
  $html = new simple_html_dom();
  $html->load($a);

    // find div stuff here and mysql data pumping here.
 }
$resultsetwiki是一个数组,其中包含要从wikia获取的标题列表,基本上resultsetwiki数据集也是在执行搜索之前从db加载的

实际上,我会把它看作这种错误

  Call to a member function find() on a non-object in 

回答了我自己的问题,似乎是我正在使用的URL,我已更改为curl with post,以发布动作和标题参数

您是否尝试全部使用
curl
来代替?是的,我尝试过,但我仍然会得到相同的结果,即在记录93上点击null issue。不使用curl也没什么不同。网站不是因为你在很短的时间内给他们打了很多电话而限制了你吗?不管怎样,解决这个问题的方法是什么?