精华内容
下载资源
问答
  • 前段时间看了点Python的语法以及制作爬虫常用的类库,于是动手制作了一个爬虫尝试爬取一些炉石原画图片。本文仅记录对特定目标网站的分析过程和爬虫代码的编写过程。代码功能很局限,无通用性,仅作为一个一般爬虫...

    前段时间看了点Python的语法以及制作爬虫常用的类库,于是动手制作了一个爬虫尝试爬取一些炉石原画图片。本文仅记录对特定目标网站的分析过程和爬虫代码的编写过程。代码功能很局限,无通用性,仅作为一个一般爬虫程序提供参考。

    要爬取的网站入口页面是:https://hearthstone.gamepedia.com/Full_art。网页上半部分的<li>标记了每个炉石资料片图片的名称(其实是锚点连接),通过这些名称就可以获得各个资料片的专题链接,比如,冠军的试炼的专题资料片对应的网址为:https://hearthstone.gamepedia.com/The_Grand_Tournament_full_art

    进入专题页面后,可以看到该资料片的图片列表,其中也有各个图片的缩略图连接,但是我想找到每个图片的原图。单个图片介绍的页面连接在每个class="image"的<a>标签中。比如连接:https://hearthstone.gamepedia.com/File:Argent_Horserider_full.png

    进入单个图片的介绍页面后,可以找到class='internal'的<a>标签,它的href属性值就是该图片的原图连接。(嗯,判断的依据是从这个连接下载得到的图是最大的。。)

    目标网站的情况大致分析完了,好像也不复杂。下面按照分析过程给出一些代码。

    题外话:利用Python制作爬虫,我引用了两个类库。分别是BeautifulSoup和requests。Python版本是3.6.1。

    首先是根据入口页面获取各个资料片的连接:

    def get_links(url):
    r = requests.get(url)
    r.encoding = "utf-8"
    only_li = SoupStrainer(class_=re.compile("toclevel-1"))
    lis = BeautifulSoup(r.text, "html.parser", parse_only=only_li)
    links = []
    for li in lis:
    link = li.a["href"]
    links.append(link)

    return links

    参数url就是入口连接的字符串值:"https://hearthstone.gamepedia.com/Full_art"。通过requests.get(str)方法获得响应对象并设置其编码格式为"UTF-8"。然后创建了一个SoupStrainer对象,这个对象的作用是在解析(HTML)文档时进行过滤和筛选。class_=re.compile("toclevel-1")表示标签的类中含有值"toclevel-1"。然后就是进行文档解析,解析出来后得到的lis对象,就是包含资料片名称的各个<li>的集合。循环获取其中的<a>标签的href属性值即可。

    第二步,根据关键字集合拼接连接。这个很简单。

    def get_real_links(basic_url, keywords):
        real_links = []
        for keyword in keywords:
            keyword = keyword[1:]
            real_links.append(basic_url+"/"+keyword)
        return real_links

    basic_url是指:https://hearthstone.gamepedia.com,keywords就是前一步操作得到的links集合。keyword = keyword[1:]是截取去掉锚点"#"号。

    第三步就是根据资料片专题画面获取该资料片下的所有图片的图片介绍页面的链接。

    def get_img_page_links(basic_url, real_link):
    all_img_page_link = []
    r = requests.get(real_link)
    r.encoding = "utf-8"
    ss = SoupStrainer(class_="image")
    only_img_a = BeautifulSoup(r.text, "html.parser", parse_only=ss)
    for img_a in only_img_a:
    all_img_page_link.append(basic_url+img_a["href"])
    print(all_img_page_link)
    return all_img_page_link

    参数real_link是单个资料片的连接。主要代码和第一步是类似的,不再赘述了。

    第四步,根据图片介绍页面的链接集合,获取原图片的资源链接。

    def get_all_img_link(all_img_page_link):
        all_img_link = []
        for link in all_img_page_link:
            img_name = link[link.index("File:") + len("File:"):]
            path = "D://python/heartstoneimg/Knights_of_the_Frozen_Throne_full_art/"+img_name
            if os.path.exists(path):
                print(img_name+" exists")
                continue
            else:
                print("requesting:%s"%(link))
                r = requests.get(link)
                r.encoding = "utf-8"
                ss = SoupStrainer(class_="internal")
                img_a = BeautifulSoup(r.text, "html.parser", parse_only=ss)
                print("imag_a:%s" % (img_a))
                print(img_a.a["href"])
                img_link = img_a.a["href"]
                all_img_link.append((img_link, img_name))
                time.sleep(10)
                if len(all_img_link) > 20:
                    break
        print(all_img_link)
        return all_img_link

    这里的代码有偷懒的痕迹,在实际下载过程中,如果将所有资料片的所有图片一起循环下载,如果中间有报连接错误(公司网络不行),文档解析的工作就会从头开始。所以我是按照每个资料片,单独下载的。所以,在本地硬盘中创建对应资料片文件夹这项的工作是手动完成的,更换一次资料片的下载也要再手工修改一次代码,这部分可以再完善。这部分程序首先是取得文件名字,然后判断是否已经下载过了,接着获取原图链接,并把图片名称和原图链接做成一个tuple存储在集合中。这里我每次运行只解析二十张图片的信息(还是网络原因)。

    最后一步就是图片下载了。

    def do_get_img(all_image_link):
    
        for img_link in all_image_link:
            path = "D://python/heartstoneimg/Knights_of_the_Frozen_Throne_full_art/"+img_link[1];
            if os.path.exists(path):
                print(img_link[1]+" exists.")
                continue
            else:
                print("downloading:%s" % (img_link[0]))
                try:
                    pic = requests.get(img_link[0], timeout=60)
                except requests.exceptions.ConnectionError:
                    print("fail or timeout!!")
                    continue
                # path = "D://python/heartstoneimg/basic_full_art/"+img_link[1]
                print("writing:%s" % (path))
                file = open(path, 'wb')
                file.write(pic.content)
                file.close()
                time.sleep(10)

    好像也很简单,每张图片下载的超时时间是六十秒,每次下载完一张图片后延迟十秒再下载,不然有时网站会因为你访问太过频繁而拒绝访问。

    main部分的代码。

    from bs4 import BeautifulSoup
    import requests
    import re
    from bs4 import SoupStrainer
    import time
    import os
    import socket
    def start_get_img(): url = "http://hearthstone.gamepedia.com/Full_art" keywords = get_links(url) basic_url = "http://hearthstone.gamepedia.com" real_links = get_real_links(basic_url, keywords) all_img_page_link = get_img_page_links(basic_url, real_links[11]) all_img_link = get_all_img_link(all_img_page_link) do_get_img(all_img_link) if __name__ == "__main__": start_get_img()

    get_img_page_links(str,str)方法的第二个参数是当前的资料片链接。更完善的做法是循环real_links集合进行下载。

    如果网络正常,每个资料片一百多张图片可以在一个小时内下载完。

    我把下载到的原画图片作为资源制作了一个网站。

    http://www.blz-art.com

    有兴趣的可以去看下。

    转载于:https://www.cnblogs.com/derry9005/p/7405151.html

    展开全文
  • 游戏原画大全

    2014-07-19 13:22:27
    魔兽世界《潘多利亚的迷雾》设定_游戏原画 ,共包含78张素材图片,图片尺寸为:950px - 277px 全套欣赏和下载地址: http://www.2gei.com/view/7703.html 5_暗黑3官方素材包-Diablo_III_Fansite_Kit_en-US_游戏原画...

     

     

    首先带来的是3部暴雪经典作品。

     

     

    魔兽世界《潘多利亚的迷雾》设定_游戏原画  ,共包含78张素材图片,图片尺寸为:950px - 277px 

    全套欣赏和下载地址: http://www.2gei.com/view/7703.html 


    5_暗黑3官方素材包-Diablo_III_Fansite_Kit_en-US_游戏原画  ,共包含182张素材图片,图片尺寸为:1600px - 17px 

    全套欣赏和下载地址: http://www.2gei.com/view/9654.html 


    5_暗黑3官方素材包-Diablo_III_Fansite_Kit_en-US_游戏原画 共包含182张素材图片,图片尺寸为:1600px - 17px 

    全套欣赏和下载地址: http://www.2gei.com/view/9654.html 

     

     

    接下来是一些非常实用的收藏。

     

    角色原画参考集-怪物_游戏人物原画_游戏人设_角色原画  ,共包含662张素材图片,图片尺寸为:1024px - 320px 

    全套欣赏和下载地址: http://www.2gei.com/view/7727.html 


    人物参考图1_游戏人物原画_游戏人设_角色原画 ,共包含88张素材图片,图片尺寸为:2136px - 530px 

    全套欣赏和下载地址: http://www.2gei.com/view/7750.html#s27856




    角色原画参考集-单色手稿-1_游戏人物原画_游戏人设_角色原画 ,共包含187张素材图片,图片尺寸为:1000px - 450px 

    全套欣赏和下载地址: http://www.2gei.com/view/7719.html 




    角色原画参考集-q版-1_游戏人物原画_游戏人设_角色原画  ,共包含264张素材图片,图片尺寸为:1024px - 633px 

    全套欣赏和下载地址: http://www.2gei.com/view/7734.html 


    3_人物参考图3_游戏人物原画_游戏人设_角色原画 ,共包含344张素材图片,图片尺寸为:1920px - 600px 

    全套欣赏和下载地址: http://www.2gei.com/view/7756.html 


    华夏 怪物原画_游戏怪物原画_角色原画  共包含41张素材图片,图片尺寸为:630px - 426px 

    全套欣赏和下载地址: http://www.2gei.com/view/7854.html 




    韩国CG场景大师paperblue作品全集【场景篇】_场景原画_游戏场景原画 共包含473张素材图片,图片尺寸为:1000px - 512px 

    全套欣赏和下载地址: http://www.2gei.com/view/7878.html 






    游戏概念设计大师Daniel Dociu作品欣赏_场景原画_游戏场景原画 共包含40张素材图片,图片尺寸为:800px - 522px 

    全套欣赏和下载地址: http://www.2gei.com/view/7858.html 

    展开全文
  • PhotoShop绘制原画讲解

    千次阅读 2016-08-14 19:03:00
    准备工作 开始基本绘制配置 接下来我们来看一下绘制过程 原画绘制其实是个考验细心的过程 还有很多不懂希望有这方面经验的朋友可以提供一些经验和素材 今天...样板图片(或者根据自己的创意进行绘制) 注意人物身材比例

    今天对于游戏原画绘制进行了一些了解,并切自己动手用Photoshop绘制了一些,因为没有笔触板,纯鼠标绘制,线条的流场图不能保证,不过重要的还是学习如何入门绘制。

    准备工作

    • PhotoShop工具
    • 样板图片(或者根据自己的创意进行绘制)
    • 注意人物身材比例(7.5头身,也可以是8头)
    • 注意先速写后定型 再添彩修细节。

    开始基本绘制配置

    • 首先绘制的话我们先要对快捷键进行一些相应的设置,这样的话,绘制效率会高一点。 (编辑–>快捷键设置)
      这里写图片描述
    • 接下来我们需要将我们的通道改为RGB模式(默认为灰色),这样我们就可以画彩色的效果。(图像–>模式–>RGB颜色)
    • 这里介绍几个常用的快捷键
    类型 快捷键
    画笔 B
    橡皮 E
    取色板 I
    放大 [
    缩小 ]
    文字 T
    减淡 加深 O

    ….


    接下来我们来看一下绘制过程

    • 首先我们先要根据图片,或者自己的想法 画一个抽象的速写,这样方便之后绘制(绘制速写前,先要创建一个图层) 注意:绘制时候,记得要常常使用创建一个新的图层,这样我们会更好的管理自己的视图。
      这里我的原始图层合并了,只能看到我的底稿了。
      这里写图片描述

    • 这里新建了一个图层,并将原有图层透明图设置为百分之50左右,方便自己在基础上进行修饰,并且进行一些粗略的写实,注意,写实后,要隐藏不要的图层。
      这里写图片描述

    • 这里我进行一些粗略的加色,这样方便知道那个位置用何种颜色,并且方便后面详细画制时候,可以更加用色差来区分边界。
      这里写图片描述
    • 这里写图片描述
    • 这里刚刚详细的刻画了一部分,其他部分等待完善。
      这里写图片描述

    原画绘制其实是个考验细心的过程

    • 需要掌握人体工程学,这样绘制出的人物具有力量感觉,并且不会出现人物重心不稳,而产生视觉的不优美感觉。
    • 还需要学会力的使用,这样绘制的时候会赋予人物以力量的感觉。
    • 需要掌握色彩的对比,这样会使效果更佳形成强烈的反差,视觉冲击力更强。

    还有很多不懂,希望有这方面经验的朋友可以提供一些经验和素材。

    展开全文
  • 游戏原画 资料下载

    2011-02-27 22:04:44
    游戏 资料 原画方面的 学习学习哈 大家一起分享哦(就一张图片,9个人物)
  • 游戏原画资源

    2014-11-23 12:49:22
    游戏中用的资源游戏开发中的图片资源~场景,人物之类的资源
  • HM2G-原画设定

    2012-10-25 16:27:20
    HM2G-游戏原画设定集。照例彩稿黑白稿。图片非文档。
  • 炉石传说原画1炉石传说原画2本打算使用Selenium模拟点击获取图片信息尝试发现源码中 该按钮并无相应的跳转链接这不应该啊 没有相应的跳转链接 点击后是如何加载新的图片?后来浏览整体网站源码后 发现把问题想复杂 ...

    7e2657189853c417e0a61b6eba7f4d03.gif

    ad91f6f035fa83e021f8f3efce0bfd66.png

    炉石传说原画1

    d4508f78d7167eaff9758c1de5512a1d.png

    炉石传说原画2

    本打算使用Selenium模拟点击获取图片信息

    尝试发现源码中 该按钮并无相应的跳转链接

    6b981aafd91a5e8aa440af73ec7ee19e.png

    这不应该啊 没有相应的跳转链接 点击后是如何加载新的图片?

    后来浏览整体网站源码后 发现把问题想复杂 根本不需要模拟点击查看更多

    a841b8b5d7b5a6ccffe27655b00a446b.png

    网站其实已经加载了所有的卡牌原画 只是之后的原画做了隐藏处理默认不展示 style=display

    点击查看更多后 显示原画

    那么只需使用requests获取网页源码

    用BeautiSoup/正则表达式/pyQuery解析元素 遍历相应img的url 即可下载

    Github

    教训:爬虫前 不要根据网页所对的操作实施相应的代码爬取 不要有这样的思维定式 首先要做的是先大体浏览分析整个网页的源代码 有的可能直接写在源码或json或js中 无需再加工

    fe0b9af4a705771896d632b51bc8d588.png

    炉石传说卡牌

    该网站通过下拉右边的滚动条不断加载新的卡牌

    与上一个网站不同 上一个网站一次性写入了所有卡牌 只不过做了隐藏处理

    该网站是通过js动态加载渲染出的卡牌 直接获取源码 无法得到所有卡牌信息

    那么就用selenium模拟下拉滚动条(selenium简直居家必备之神器)

    0fb32d271863d3e3b23bdcd9a3d9cf86.png

    使用selenium执行js脚本 每次执行下拉1000个单位滚动条 执行90次

    为什么是90次 测试出来的 大概90次拉到底

    注意:这里要增加1~3秒的暂停时间 用于网页渲染

    第一次没有设置停留时间 无法获取新的数据 怀疑自己 怀疑人生

    经前端/后端好友L君的提示 需增加暂停时间 这样才能获得加载渲染后的数据

    browser.page_source便可获得动态加载的所有数据

    有了数据 之后就很简单 正则匹配获取相应url下载即可

    c864a86f3d98bce91ed312222a8b1abe.png

    Github

    https://github.com/sadjjk/Hearth-Stone-Spider.git

    最后获得了800张原画 1324张卡牌

    97ae3d25bc0be2a11057e3e306701559.png

    4a4e188961a809f2f992624b6b1761e6.png

    既然获得了这么多卡牌和原画 不能浪费 利用起来 拼图!

    致敬下玩了好几年的炉石

    7f057e282ef84417b0b312b473f3a98c.png

    03bafa65d8cc2b63eae7d4fca05b7858.png

    谢谢你!

    顺手拼一下女神

    2b55312f246ef445b345fb3aea02f137.png

    39e2a0c47a46698a2d47af9ea842a9b3.png

    *声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

    d429d4203ffb1514509b29dd089ae8cf.gif

    觉得不错,点个“在看”然后转发出去f2b6a3ec11cc348d03119d609d999698.gif

    展开全文
  • //把这个图片和其他app分享,AUTHORITY是自己定义的,第三个必须是完整的图片路径 takepic . putExtra ( MediaStore . EXTRA_OUTPUT , photouri ) ; //把share的Uri放进选好的路径 startActivityForResult ( ...
  • 很多人在一开始接触绘画的时候都会留意这样漂亮的图片。 插画的作用和目的:插画是将小说等文字所描述和设计的情景和情节,以画面的形式呈现在读者面前,使读者更能理解和融入文字所描述情景和情节之
  • 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 原画爬取 先看一下炉石传说的原画: 炉石传说原画链接: ...该网站通过点击查看更多加载...
  • 如何入门学CG原画

    2021-01-20 16:13:28
    一、基础篇 1.最简单的是从平面,不带透视角度的简笔画入门,每天临摹20-50个,享受这个枯燥的绘画过程,培养一个观察力,画的越像越好,把图形画准。 2.学习透视原理,学习基础素描,掌握...*图片来源网络,侵删...
  • 点击标题下「蓝色微信名」可快速关注来源:丨像我这样的人丨https://www.jianshu.com/p/e386f549d17a原画爬取先看一下炉石传说的原画:炉石传说原画链接:http://news.4399.com/gonglue/lscs/kptj/该网站通过点击查看...
  • 图片来自网络 丰富你的背景 虽然我们在制作游戏原画的时候,人物是关键。但是背景的设置也是不可或缺的,在制作背景时,细节部分也可以为观察者带来一个全新的认知。你可以通过背景的切换来表示不同角色的身份,...
  • 【TechWeb】4月3日消息,今日,英雄联盟官方微博发布了IG冠军皮肤原画,从曝光的图片来看,IG冠军皮肤采用了具有中国特色的水墨风格,黑白灰的三种配色对应了iG的色调风格。 据悉,这次IG电子竞技俱乐部的6位冠军...
  • 网络动画片《天官赐福》改编自墨香铜臭著作的同名小说作品。 12月9日,根据墨香铜臭小说改编的《天官赐福》同名电视剧组讯曝光。 据悉,该剧将由《陈情令》导演陈家霖执导,...《天官赐福》与君山明光殿概念原画图片
  • 原画爬取先看一下炉石传说的原画:炉石传说原画链接:http://news.4399.com/gonglue/lscs/kptj/该网站通过点击查看更多加载新的内容,本打算使用Selenium模拟点击获取图片信息 ,尝试发现源码中 该按钮并无相应的跳转...
  • 一、游戏原画分析 游戏模型师拿到游戏原画,首先看轮廓剪影,从正面推测出侧试(和顶视)的立体起伏关系,为...1.不要按图片照着勾线,学习阶段需要锻炼自己的眼力。 2.游戏模型的厚度起伏要有层次感。 四、UV拆分 1.平
  • 2020-02-09

    2020-02-09 13:38:15
    还原导入max的原画图片质量
  • 电脑绘画软件哪个好?初学漫画怎么选择?小编就给各位小伙伴介绍一下几款画漫画常用的数字绘画软件:1. Photoshop:最强大的图形...该软件拥有众多的编修与绘图工具,使用方便,功能强大,可以高效地进行图片处理工...
  • 图层操作先导入图片(请看上一篇文章),然后点击【窗口】,在弹出的下拉菜单中选择【图层】然后找到图层的面板,点击这里。然后点击新建图层按钮,这样就新建好了我们的图层1图层这个地方的眼睛按钮,是隐藏背景图用...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 124
精华内容 49
关键字:

原画图片