p站里的图片怎么高清下载,p站 批量下载
前言
文字和照片来源于网络,仅用于学习交流,无商业用途。如果您有任何问题,请立即联系我们。
PS:如果有合作伙伴需要python学习资料,请点击下面的链接自行获取。
Python可以通过点击免费学习资料、代码、交流答案的方式加入。
你好。今天决定决定爬虫下面的p站照片。首先,打开网站进行研究。
对不起,我打错电话了。我觉得是下一个网站。
众所周知,插画网站pixiv是p站的别名,所以今天我们用爬虫来保存大量p站的美照。
p站主要分为四个模块:插画,动画,漫画,小说,小说,漫画都是日文的,所以今天的目标是插画和动画。
图片链接法分析今天以插画为例,进入插画模块。首先,想办法下载一张有插图的图片。打开F12进入网络,发现这个页面返回每个插图的id。
点击每个插图,进入插图的具体页面,浏览网站,连接上一页的id。
打开详细信息页面的源代码。“链接”选项卡上有href链接。点击进入。
进来,我找到了这张插图的详细信息,包括插图的标题、高度和宽度。我认为这个url是一个可以下载的图片链接。
单击url链接后,图像仍会直接在新窗口中打开。显示这是我们正在寻找的插图的下载链接。
接下来,让我们看看这个可下载插图的url链接的规则。打开插图模块中的第二幅插图,按照刚才相同的步骤查看可下载的链接。
简单来说,你可以看到这两个链接不仅id不同,其他链接都是一样的。id是从插图列表页面返回的id。很简单。
一个图像爬虫下载。我们拿出身份证,先下载一张图片。如果你的一张图片能被爬虫下载,你就成功了一半,剩下的作品可以批量下载。
查看接口返回的json值,发现illustr _ id位于contents下。
每次动态加载都会返回50张图片的illust_id,而现在只需下载一张图片,直接返回第一张图片的illust_id。
然后,你需要写一个下载图片的方法。保存到指定目录。使用文件名illustr _ id。除了illust_id之外,还会分析图像链接。只需创建一个向导来完成下载。
至此,第一个映像已经成功下载。
我下载了凉台的照片,上面的一张照片。接下来是批量。
第一批是插图列表中超过50页的图片。如果再次下降,接口将返回新数据。除了页码p不同之外,接口的请求是相同的。
向下到底部,标题下请求的最大P值是10。然后,以p的值为参数,从1到10循环就够了。
第二批的位置是获取illust_id的位置。刚才下载一个的时候,我们可以随便写一个0或者50份的循环。
图中的I每次加1都返回illustr _ id。将返回的50个Illust _ id全部添加到Illust _ id的空列表中,下载时从Illust _ id中循环获取Illust _ id,实现批量下载。
对于短期批量下载来说,背靠背的保护很容易被撑住,背靠背,被ip封杀一段时间后就不能再爬了。
反攀爬对策主要有以下三种。
有了等待时间,可以在批量请求接口之间添加随机等待时间。Ip关闭通常是基于你的请求在指定的时间内达到指定的阈值,所以你可以添加一个随机的等待时间来控制抓取的频率。
但是这种随机等待的时间不好控制。如果等待时间太短,效果可能会很差。太长的话,爬坡时间会更长。
随机用户代理还会判断你的请求是否是网站正常的浏览器请求行为。如果你的爬虫没有这个参数,那个网站会第一时间认定你是爬虫。被屏蔽是你自己的事。如果你的UE保持不变,多次请求后会被识别。因此,我们需要获得一些UAs,并且我们需要在每次请求它们时随机获得它们。
关于代理ip池最安全的事情是创建自己的代理ip池。还有免费和收费的ip代理。免费使用率不高。你需要爬上去,摘下来,检查一下,再用。每次爬升时随机选择一个可用的代理ip,可以大大降低被ip阻塞的风险。下次我会写一篇文章来说说我的代理ip池的构建方法。
然后,以上步骤基本上是爬行动物的基本步骤。除了爬取文字p站的图片,爬取其他网站图片的步骤基本都是同样的思路。
最后,这些图像可以用来欣赏,自己制作壁纸。用于视频封面、素材或文章封面时,需要注意图像是否有版权。
我记得代码中的头信息被替换成了我自己的重新运行代码。
以上是今天的分享。希望对大家有帮助。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。