首页 文章 精选 留言 我的

精选列表

搜索[原生应用],共10000篇文章
优秀的个人博客,低调大师

IPv6时代已来:双十一中的IPv6大规模应用实践

2018天猫双11以2135亿的成交额创下了新的记录,新纪录的背后大家可能没有意识到,你已经悄然成为首批互联网IPv6用户。今年天猫双11期间全面支持IPv6,这是IPv6在国内互联网领域首次大规模实践,覆盖了网购、视频直播、位置服务等众多大流量、高并发场景。 就和每个建筑都有自己的地址一样,在网络上,每个联网的设备会有自己的地址:IP,没有地址就无法联网。上世纪80年代初的时候人们设立了IPv4协议来分配地址,但当时无法预料现在有这么多设备要联网,到现在这一地址库已经接近枯竭,每个IP地址的价格也是水涨船高。 随着5G、IoT技术的不断成熟,带来了更大一波的新增入网设备。IPv6作为新的协议对网络地址大大地做了扩容,它多到可以让地球上的每一粒沙子分配到一个独立IP地址,不仅如此,IPv6还提升了转发效率以及通信安全性。 IPv6的

优秀的个人博客,低调大师

[python] 1、python鼠标点击、移动事件应用——写一个自动下载百度音乐的程序

1、问题描述: 最近百度总爱做一些破坏用户信任度的事——文库金币变券、网盘限速,吓得我赶紧想办法把存在百度云音乐中的歌曲下载到本地。 http://yinyueyun.baidu.com/ 可问题是云音乐中并没有批量下载,而上面我总共存了700多首音乐! 因此:有必要写一个脚本自动下载这些音乐了!!! 2、解决问题 自动下载歌曲有两种方法: JS法 模拟鼠标点击法 由于考虑到JS法需要分析网页结构、寻找下载链接,工作量有点大,于是选择用模拟鼠标点击法! 在linux上我首先想到用python来做这件事。 用python使用鼠标点击事件比较简单,在github上有人开源了一个PyMouse模块,简单几行代码就能模拟鼠标! https://github.com/pepijndevos/PyMouse/wiki/Documentation 该PyMouse有个简单的DEMO: 1 # import the module 2 from pymouse import PyMouse 3 4 # instantiate an mouse object 5 m = PyMouse() 6 7 # move the mouse to int x and int y (these are absolute positions) 8 m.move(200, 200) 9 10 # click works about the same, except for int button possible values are 1: left, 2: right, 3: middle 11 m.click(500, 300, 1) 12 13 # get the screen size 14 m.screen_size() 15 # (1024, 768) 16 17 # get the mouse position 18 m.position() 19 # (500, 300) 因此,编写一个可以自动下载一页歌曲(20首)的脚本如下: 该代码所做的主要任务是点击下载,然后再点击确定: 注:如果只是两次点击如何解释21、22行代码? 因为点击下载之后,会有个选择下载音质的弹框,音质有高、中、低三种,但是有些歌曲只有一种或两种音质可以选择。这导致弹框的位置有所不同(确定按钮的位置也随之不同),解决此问题一个“笨”方法是将可能区域都点一遍! 1 # import the module 2 from pymouse import PyMouse 3 from time import sleep 4 5 # instantiate an mouse object 6 m = PyMouse() 7 8 pos_x = 1120 9 pos_y = 302 10 pos_y_add = 38 11 one_page_lines = 20 12 13 select_button_x = 984 14 select_button_y = 550 15 16 sleep(2) 17 18 for i in range(0,one_page_lines): 19 m.click(pos_x,pos_y+i*38,1) 20 sleep(2) 21 for j in range(0,30): 22 m.click(select_button_x,select_button_y+j*5,1) 23 sleep(3) 24 print(i) 3、遗留问题 上面脚本能在网速良好情况下将一页的歌曲下载到本地,接下来自然想到的是模拟鼠标拖动(拖动slide bar,切换至下一页20首歌曲)。 于是我尝试写一个模拟鼠标拖动的脚本做个测试: 1 # import the module 2 from pymouse import PyMouse 3 from time import sleep 4 5 # instantiate an mouse object 6 m = PyMouse() 7 8 pos_x = 1120 9 pos_y = 302 10 pos_y_add = 38 11 one_page_lines = 20 12 13 select_button_x = 984 14 select_button_y = 550 15 16 slide_x = 1915 17 slide_y = 312 18 slide_dis = 1 19 20 sleep(5) 21 for page in range(1,40): 22 m.press(slide_x,slide_y) 23 slide_y = slide_y + slide_dis 24 m.move(slide_x,slide_y) 25 m.release(slide_x,slide_y) 26 sleep(10) 27 理论上每次滑动slide bar歌曲list移动的距离是相同的,而实测发现存在没有规律的误差! 由于第二节中下载歌曲的脚本鼠标点击的start位置是固定的,因此一旦不能利用slide bar移动使歌曲列表恰好切到下一页,就会导致下载脚本点击事件点错地方。 后续优化方向可以利用图像识别对slide bar移动进行校准~ 本文转自beautifulzzzz博客园博客,原文链接:http://www.cnblogs.com/zjutlitao/p/6942729.html,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册