我得到了这个整齐的小Instagram脚本,该脚本提取了标签标签帖子,从而跳过了API流程,但我不知道如何加载下一批。一次最多只能加载6张照片。
我尝试过这样的事情
module.exports = {
//...
externals: {
'./MyModuleFile': MyModule,
}
};
但是从来没有任何运气..
<script type="text/javascript">
$(window).scroll(function () {
if ($(window).scrollTop() + $(window).height() == $(document).height()) {
return $insta_array;
}
});
</script>
我可以显示真实结果,只是不能加载超过60张左右的图像。
答案 0 :(得分:0)
您能做的是使用AJAX并添加帖子数限制。假设这是div。您必须将帖子的索引存储在div中
echo '<div index="'. $i .'" class="photo"><a href="'.$newPosting['image'].'"><img src="'.$newPosting['thumbnail'].'"></a><div class="caption">'.$newPosting['caption'].'</div></div>';
当div位于底部时,您可以发送这样的ajax
$(window).scroll(function() {
let index = $('.photo:last').attr("index"); // get the last div's index
if ($(window).scrollTop() + $(window).height() == $(document).height()) {
$.ajax({ //create an ajax request to your .php file
type: "POST",
url: "yourphppage.php",
data: 'moreposts=' + index, // add a a parameter
dataType: "html", //expect html to be returned
success: function(msg) {
}
});
}
});
现在将您的$limit
变量设置为全局变量,以便您可以在范围中编辑它的值。像这样
$limit = 6; //default limit
if (isset($_POST["moreposts"])) {
$lastindex = (int)$_POST["moreposts"];
$limit = $lastindex * 2 // or anything you want
}
function scrape_insta_hash($tag) {
...
for ($i=0; $i < $limit; $i++){
...
个人。我不建议进行网络爬虫。这是检索数据的丑陋方式。他们还可以随时更改其标记。