设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 重新 试卷 创业者
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

用Python做个海量小姐姐素描图(2)

发布时间:2019-10-21 12:49 所属栏目:21 来源:大刘
导读:网站的具体内容我就不在文中展示了,为了指定图片爬取的思路,大概讲下页面结构:网站的主页罗列了N个主题,每个主题页面中都包含了M张小姐姐的图片,结构示意图如下: 各页面url的构建也很明了,例如下图中的页面u

网站的具体内容我就不在文中展示了,为了指定图片爬取的思路,大概讲下页面结构:网站的主页罗列了N个主题,每个主题页面中都包含了M张小姐姐的图片,结构示意图如下:

用Python做个海量小姐姐素描图

各页面url的构建也很明了,例如下图中的页面url是http://www.waxjj.cn/2794.html,其中2794就是主题页的ID号。查看页面的html代码(下图),发现每张图片都在一个<li>标签下面。

用Python做个海量小姐姐素描图


遇到这种情况,一般来说我们可以通过某种解析器来获取每张图片的url。但是,经过仔细观察发现整个网页的html代码中只有涉及图片url的部分带有完整的http连接,因此可以考虑使用正则表达式来提取图片url,实现这部分功能的代码如下。

用Python做个海量小姐姐素描图

在上面这段代码中,我们提取主题页的ID作为待保存图片名称的一部分,save_jpg()函数中会把每张图片转换为素描图并保存到本地。

由于我们要使用opencv对抓取到的图片进行各种运算转换,因此使用requests获取的图片必须先保存到本地,再用opencv重新读入后才行。基于上述思想,我们构建了如下所示的save_jpg()函数,其中rgb_to_sketch()函数是对上文第一部分中所说的第二种素描图的获取方法进行的封装。

用Python做个海量小姐姐素描图

而在主函数中,我们只需要指定想要获取主题页面的id号,构建一组url列表就可以了:

  1. def main(): 
  2.     idlist = ['id1', 'id2'] 
  3.     urllist = ['http://www.waxjj.cn/'+x+'.html' for x in idlist] 
  4.     jpgurls = get_jpg_urls(urllist) 

以上就是完整代码,来看看运行后的效果吧~~

用Python做个海量小姐姐素描图

其实程序员要想防止脱发程序员还在担心脱发,我觉得还是要多锻炼身体,少熬夜,当然多看看养眼的小姐姐也不是不错的!

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读