原神2.0宅男福利!Python爬取原神cos图片,谁的妻子赶紧抱走

3个月前 (11-26 16:54)阅读4回复0
xxhh
xxhh
  • 管理员
  • 注册排名4
  • 经验值129665
  • 级别管理员
  • 主题25933
  • 回复0
楼主

  冲动的心,颤动的手,妻子你们谁没有?

  7月21号《原神》2.0发布,各人更新了吗?

  更新内容一览:

  1、稻妻城:稻妻城和六大岛屿相连,目前新的岛屿只是此中三个;

  2、家园系统更新:会新增动物,种植系统;

  3、新圣遗物:稻妻会上三种新圣遗物;

  4、次要退场人物:八重神子、珊瑚宫星海,早柚、神里绫华、托马、巴尔、宵宫、五郎。

  冲动的我,在逛米游社的时候,看着那些cos美女已经抑制不住了,连夜的给各人爬了cos同人图,保留了!有福同享,下面我们一路来看看那些美女,不合错误是代码操做,正好给各人一个练手的小项目!

  起首,我们来看看效果图:

  开发情况: Python3.6

  模块(库): requests/json/os/threading

  爬取目标:原神)

  目标:爬取COS专区下的图片,并保留

  在COS专区下的图片排序以最新回复栏目排序,因而所爬取的图片会跟着最新的时间而更改。法式运行时主动爬取最新20条最新图片。

  1、导进库

  import requests

  import json

  import os

  import threading

  2、初始化URL地址、设置UA代办署理(重视:那里的url并非首页,而是一个二级页面)

  class WebSpider(object):

  def __init__(self):

  self.url = ''

  self.headers = {

  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'

  ' Chrome/92.0.4515.107 Safari/537.36'

  3、阐发数据并贮存为字典返回

  def parse(self):

  img_dict_data = {}

  res = requests.get(self.url, headers=self.headers).content.decode('utf-8')

  res = json.loads(res)

  res = res['data']['list']

  subject_name = [i['post']['subject'] for i in res]

  cover_url = [i['post']['cover'] for i in res]

  # print(cover_url, subject_name)

  # 获取对应的题目以及图片地址

  for name, url in zip(subject_name, cover_url):

  # print(name, url)

  img_dict_data[name] = url

  return img_dict_data

  4、 保留图片

  def save_img(self, data):

  for k, v in data.items():

  img_type = v.split('/')[-1].split('.')[-1]

  save_path = os.path.dirname(os.path.join(__file__)) + '/img' # 当前目次下的图片保留途径

  if not os.path.exists(save_path):

  os.mkdir('img')

  with open(f'img/{k}.{img_type}', 'wb') as f:

  img = requests.get(v, headers=self.headers).content f.write(img)

  print(f'{k}.{img_type} ---图保留胜利!')

  源代码:

  爬取地址:

  getForumPostList:api返回当前最新回复的列表json数据

  forum_id=49:COS栏目ID数据为 49

  import requests

  import json

  import os

  import threading

  class WebSpider(object):

  def __init__(self):

  self.url = ''

  self.headers = {

  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)'

  ' Chrome/92.0.4515.107 Safari/537.36'

  def parse(self):

  img_dict_data = {}

  res = requests.get(self.url, headers=self.headers).content.decode('utf-8')

  res = json.loads(res)

  res = res['data']['list']

  subject_name = [i['post']['subject'] for i in res]

  cover_url = [i['post']['cover'] for i in res] # 遍历图片的URL地址

  # print(cover_url, subject_name)

  # 获取对应的题目以及图片地址

  for name, url in zip(subject_name, cover_url):

  # print(name, url)

  img_dict_data[name] = url # 字典增加数据

  return img_dict_data # 返回数据

  # 保留图片

  def save_img(self, data):

  for k, v in data.items():

  img_type = v.split('/')[-1].split('.')[-1] # 获取图片类型

  save_path = os.path.dirname(os.path.join(__file__)) + '/img' # 当前目次下的图片保留途径

  if not os.path.exists(save_path): # img文件夹不存在时则创建新文件夹

  os.mkdir('img')

  with open(f'img/{k}.{img_type}', 'wb') as f:

  img = requests.get(v, headers=self.headers).content # 发送恳求获取图片内容

  f.write(img) # 写进数据

  print(f'{k}.{img_type} ---图保留胜利!')

  def main(self):

  data = self.parse()

  self.save_img(data)

  仅供进修,爬虫利用需隆重!

  期看能够得到列位的一键三连,感激列位撑持!

  祝各人进修python顺利!

  假设有正在跟我一样的自学的伴侣,需要我本篇的源码或者其他的Python干货能够转发此文私信我(私信发我“原神”获取)

0
回帖

原神2.0宅男福利!Python爬取原神cos图片,谁的妻子赶紧抱走 期待您的回复!

取消