接到需求,要求要将几个好玩的网页版本的单机小游戏。采集到我们的服务器中。

这里以 水枪射手 这个游戏举例
http://m.7k7k.com/player/198961.htm?uc_biz_str=qk_enable_gesture%3afalse|OPT%3ABACK_BTN_STYLE%400%7COPT%3ATOOLBAR_STYLE%401

1、首先准备好抓包工具或者直接在用浏览器自带的抓包,推荐用抓包工具可以批量复制抓到的资源链接。
如chrome浏览器:

fiddler抓包工具:

2、抓包工具准备好后,然后开始玩一遍游戏,在玩游戏的时候通过抓包工具,抓取游戏的资源链接。 需要注意的是,有的游戏,在刚进去的时候会吧所有的资源链接都加载出来,而有的游戏则需要一边玩,一边加载新的资源链接。

将抓取的资源链接,复制到代码里。去下载

 public static void main(String[] args) {//存到自己的文件夹位置String localPath="D:/crawler_games/shoot/";//pre_url 这个参数是:用于存文件夹时候,去掉链接的前面这一串路径String pre_url="http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/";String list[]={//"这里输入抓包的所有代码 ""http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/gameIndex.html","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/h5api-interface.php","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/index.js","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/libs/laya.core.js","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/libs/laya.ui.js","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/libs/laya.d3.js","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/libs/laya.physics3D.js","http://flash.7k7k.com/cms/cms10/20200116/1213129483/01/js/bundle.js",//"这里输入抓包的所有代码...上面这些只是小部分示例"};try {for (String s : list) {String urlName = s.replace(pre_url,"");String path=localPath+urlName;downloadNet(s,path,localPath,pre_url);}} catch (Exception e) {e.printStackTrace();}}//下载资源文件的方法private static void downloadNet(String crawlerUrl,String path,String localPath,String pre_url) throws Exception {if (!crawlerUrl.contains(pre_url)){return;}//这里的将首页资源,刚换名字if(path.contains("gameIndex.html")){path=localPath+"\\index.html";}System.out.println("完成 :" +path);// 下载网络文件int bytesum = 0;int byteread = 0;URL url = new URL(crawlerUrl);String[] split = path.split("\\/");System.out.println("长度"+split.length);for (int i = 1; i < split.length; i++) {String everyPath="";for (int j = 0; j < i; j++) {everyPath+=split[j]+"/";File f = new File(everyPath);//没有目录,就创建目录if (!f.exists()) {try {f.mkdirs();} catch (Exception e) {e.printStackTrace();}}}}try {URLConnection conn = url.openConnection();InputStream inStream = conn.getInputStream();FileOutputStream fs = new FileOutputStream(path);byte[] buffer = new byte[1204];int length;while ((byteread = inStream.read(buffer)) != -1) {bytesum += byteread;fs.write(buffer, 0, byteread);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}

3、执行main方法采集:

4、执行完后,就可以看到采集的文件资源了(从自己指定的目录里查看)

5、通过本地的环境的nginx就可以访问自己的抓的小游戏了, nginx做个简单的配置,配置静态资源访问即可(注意:游戏的资源后缀比较多、且少见,按后缀配置静态资源访问的时候,一定保证这些资源都可以正常访问):

6、一切准备好后,可以访问自己本地的游戏链接了

爬虫篇——采集单机游戏(网页游戏),爬取小游戏相关推荐

  1. python爬取小游戏_如何用Python爬取小游戏网站,把喜欢的游戏收藏起来(附源码)...

    简介: Python 是一门简单易学且功能强大的编程语言,无需繁琐的配置,掌握基本语法,了解基本库函数,就可以通过调用海量的现有工具包编写自己的程序,轻松实现批量自动化操作,可以极大提高办公和学习效率 ...

  2. 如何用Python爬取小游戏网站,把喜欢的游戏收藏起来(附源码)

    简介: Python 是一门简单易学且功能强大的编程语言,无需繁琐的配置,掌握基本语法,了解基本库函数,就可以通过调用海量的现有工具包编写自己的程序,轻松实现批量自动化操作,可以极大提高办公和学习效率 ...

  3. 贪吃蛇html网页小游戏,网页贪吃蛇HTML5小游戏制作

    贪吃蛇是以前我们经常在手机里玩的一个小游戏,现在要是把它搬到网页上也会让人更回味.这是一款非常有趣的HTML5响应式网页贪吃蛇小游戏.在游戏中你可以使用键盘的上下左右来控制蛇的运动方向.现在要列出的是 ...

  4. html掷骰子小游戏,网页实现掷骰子小游戏

    首先明确需求: 在网页正中间展示骰子,点数为一点,点击骰子,骰子旋转然后停留在随机点位上.再次点击骰子,骰子可以继续旋转并停留在随机点位上. 这里我们使用css3动画.3d旋转配合js实现效果 一,H ...

  5. 最没灵魂的爬虫——Selenium 游戏信息的爬取与分析

    最没有灵魂的爬虫--Selenium 游戏信息爬取与分析 准备工作 IDE选取 selenium安装 ChromeDriver安装与配置 还需要用到的其他python库 数据爬取 杉果游戏的数据获取 ...

  6. 教你如何使用Java代码从网页中爬取数据到数据库中——网络爬虫精华篇

    文章目录 1:网络爬虫介绍 2:HttpClients类介绍 2.1 HttpGet参数问题 2.2 HttpPost参数问题 2.3 连接池技术问题 3:Jsoup介绍 4:动手实践如何抓取网页上数 ...

  7. 基于steam的游戏销量预测 — PART 1 — 爬取steam游戏相关数据的爬虫

    语言:python 环境:ubuntu 爬取内容:steam游戏标签,评论,以及在 steamspy 爬取对应游戏的销量 使用相关:urllib,lxml,selenium,chrome 解释: 流程 ...

  8. 知乎爬虫(scrapy默认配置下单机1小时可爬取60多万条数据)

    知乎爬虫(scrapy默认配置下单机1小时可爬取60多万条数据) 版本:1.0 作者: AlexTan CSDN: http://blog.csdn.net/alextan_ e-mail: alex ...

  9. python爬取steam250游戏详细信息和下载游戏介绍视频

    爬取网页地址 https://steam250.com/2020 网页详情 爬取的信息 游戏名称 游戏图片地址 游戏发行日期 游戏分类 游戏评分 游戏描述 游戏介绍视频 这里游戏描述需要点击单个游戏介 ...

最新文章

  1. [翻译]StructureMap 指南 – .NET中的依赖注入和控制反转
  2. Java洛谷P5461 赦免战俘讲解
  3. 2021春季每日一题【week4 完结】
  4. python中,如何将多行进行输出,同时将行尾的换行符去掉
  5. 拦截器中addInterceptor和excludePathPatterns里的/* /**是什么
  6. CSS 设计模式一 元素
  7. [Cypress] install, configure, and script Cypress for JavaScript web applications -- part3
  8. 资产模型数据初始化时应注意的事项
  9. Linux. C语言中else,if else用法详解,C语言if else用法完全攻略
  10. 高光谱和图像特征相融合的生菜病害识别
  11. java基础知识查漏 三
  12. Unity AssetBundle 爬坑手记
  13. HDU 4786 生成树 并查集+极大极小值 黑白边 确定选择白边的数量
  14. CFS 调度器学习笔记
  15. 区块链开发入门书籍推荐
  16. 惊艳CES!优必选Walker新一代迈出里程碑一步,仿人机器人进入家庭取得重大突破
  17. Tire树(字典树)
  18. hr标签html样式,hr标签样式修改及美化(css的hr标签实现精美线条)
  19. 微信朋友圈图片压缩算法
  20. 地图网站显示实时交通路况信息的原理

热门文章

  1. vue 引入萤石视频
  2. 树枝学术 | 图书查找、论文查找全攻略
  3. 计算机化自适应测验 英语,计算机化自适应测验选题策略研究
  4. 【诗歌】值得背诵古诗(一)
  5. 那曲虫草价目表2022
  6. python c++混合编程文档缩减版笔记 -2
  7. 蓝魔手机回归产品本身 老战友魅族OPPO怎么看?
  8. Excel中批量生成标签,批量打印标签。按指定模板批量打印标签
  9. java——财务支票大写汉字转换
  10. workitems in the coming 5 monthes.