safari

iOS的http/https请求——十分钟学会Charles抓包

[亡魂溺海] 提交于 2020-08-14 06:34:33
Charles安装 HTTP抓包 HTTPS抓包 1. Charles安装 官网下载安装Charles: https://www.charlesproxy.com/download/ 2. HTTP抓包 (1)查看电脑IP地址 (2)设置手机HTTP代理 手机连上电脑,点击“设置->无线局域网->连接的WiFi”,设置HTTP代理: 服务器为电脑IP地址:如192.168.1.169 端口:8888 设置代理后,需要在电脑上打开Charles才能上网 (3)电脑上打开Charles进行HTTP抓包 手机上打开某个App或者浏览器什么的,如果不能上网,检查前面步骤是否正确 点击“Allow”允许,出现手机的HTTP请求列表 3. HTTPS抓包 HTTPS的抓包需要在HTTP抓包基础上再进行设置 设置前抓包HTTPS是这样的 设置后抓包HTTPS长这样 以下为在HTTP抓包基础上进行HTTP抓包的进一步设置步骤: (1)安装SSL证书到手机设备 点击 Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device 出现弹窗得到地址 chls.pro/ssl 在手机Safari浏览器输入地址 chls.pro/ssl ,出现证书安装页面,点击安装 手机设置有密码的输入密码进行安装 注意:

浏览器份额及其历史以及内核变迁总结

左心房为你撑大大i 提交于 2020-08-14 05:57:43
一、本文介绍范围 本文写于2020年5月,获取的是2019年4月-2020年4月这一段时间的浏览器的市场份额占比,同时本文也会涵盖主流浏览器的内核的变迁历史,以及各大平台下的浏览器现状。 过去的历史可以参考: 2016年——2017年的浏览器市场份额以及浏览器的内核历史 二、主流浏览器 浏览器全平台份额占比 桌面浏览器市场份额占比 移动端市场份额占比 平板浏览器市场份额占比 从以上数据可以看书,在桌面市场中,chrome占据榜首高达69%,随后是Firefox 、Safari、 Edge、 IE、 Opera等;在智能手机市场,chrome依然高居榜首,高达61.16%,随后是Safari占据21.89%,Samsung Internet占据6.65%,UC占据5.29%,Opera占据2.33%,Android 、KaiOS 、Firefox、 QQ browser等都在1%之下;在平板市场,苹果牢牢占据优势,位居榜一,占比高达59.91%,随后是Chrome占比27.03%,Android占比10.75%,以及Firefox、Opera等;综合所有平台来看,整个市场的份额占比Chrome是No.1占比63.39%,Safari占比16.68%是No.2,Firefox占比4.54%,Samsung Internet占比3.42%,UC browser占比2.87%

苹果系统截屏录屏+标记剪辑功能详解( iPhone/iPad/Mac)

天涯浪子 提交于 2020-08-13 19:19:17
苹果系统中的截屏和录屏、标记和剪辑功能一如它的其他产品设计,做得非常细致。在我们日常的工作中,不免会遇到这些功能,今天小编就给大家详细讲解下苹果系统截屏录屏、标记剪辑功能,希望对大家有所帮助! 001. 截屏+标记 在 iPad 和 iPhone 当中,一般使用锁屏+音量加键截屏。截屏后自动变成缩略图,点击即可进行截图分享或标记。在 Safari 浏览器中截屏后,可以点击整页按钮,上下滑动截取整个页面,一般生成为 PDF 文件,方便保存。 在 iPad 当中使用 Apple Pencil ,可以从屏幕左下方边缘处向中心滑动,快速截屏和手绘标注。 在 Mac 当中,除了 Shift+ Command+3 截全屏,Shift+Command+4 截取所选区域,更新的系统增加了 Shift+Command+5,弹出截屏和录屏工具条。你可以截取整个屏幕、截取整个窗口和截取所选区域。其中,截取所选窗口自动生成为无背景的图片。你甚至可以用来截取桌面上的无背景图标。 右侧的【选项】中,可以选择存储位置、倒计时时长以及另外三个常规选项。 Mac 系统截图后,你可以用自带的预览工具进行绘图和标记,以及签名。身边有 iPhone 或 iPad,你可以点击右侧的图标进入标记连续互通模式。选择一个设备,马上开始更方便的触屏标记。 002. 录屏+剪辑 在 iPad 或者 iPhone 中

GTAjax升級:一劍🗡磨十年改進JavaScript表單遞交瀏覽器異常等

≯℡__Kan透↙ 提交于 2020-08-13 16:57:06
2020年7月以來,持續對 UfqiLong 有福常在 進行升級改進。 改進過程中遇到之前不曾見的問題,在使用 GTAjax進行異步遞交 有福常在UfqiLog 的文章内容時,有隨機性地出現遞交失敗。進一步的跟蹤發現,儅點擊遞交后,GTAjax接管了表單遞交動作並觸發了進度顯示並進行讀秒操作。 但是,詭異的是,GTAjax在後臺並未真的將遞交發送給服務器端後臺。於是我們決定對 GTAjax開啓 debug 模式,進行深入分析,爲何之前不曾有這樣的問題,爲何問題會是隨機性出現,而又爲何,儅第一次遞交失敗后,第二次原樣操作,卻能成功? 帶著這些問題,我們準備深入分析一下。開啓 GTAjax的debug模式相對簡單,在 運行時參數裏: var myGTAjax = new GTAjax(); myGTAjax.set(‘isdebug’, true); 這樣即可打開 GTAjax 的過程數據輸出,從而觀測到整個通訊過程。通過分析debug日志,問題很快鎖定到 postForm.submit() 這個節點上。 也即,在使用 ForceFrame 模式進行表單遞交時,依賴 JavaScript的 HTMLFormElement.submit() 這個方法進行最終的數據遞交。 這個是 W3C、HTML DOM和 JavaScript等標準組織封裝好的方法,無法進一步地往下拆解。問題就轉化為爲何

深入理解CSS绝对定位

三世轮回 提交于 2020-08-13 07:49:50
CSS中有3种定位机制:普通流,浮动和绝对定位。除非专门指定,否则所有框都在普通流中定位。顾名思义,普通流中元素框的位置由HTML元素的位置决定。块级框一个接一个地垂直排列,框之间的垂直距离由框的垂直外边距计算出。在本文中,我们主要讲解3种定位机制之一的绝对定位,这就需要深入了解relative(相对定位),absolute(绝对定位)两种position属性值。 position的所有属性值如下所示: absolute,生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 relative,生成相对定位的元素,相对于其正常位置进行定位。 fixed, 生成固定定位的元素,相对于浏览器窗口进行定位。 Fixed 定位在 IE7 和 IE8 下需要描述 !DOCTYPE 才能支持。Fixed定位使元素的位置与文档流无关,因此不占据空间。 static,默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。粘性定位的元素是依赖于用户的滚动,在 position:relative 与 position:fixed 定位之间切换。元素定位表现为在跨越特定阈值前为相对定位,之后为固定定位。( Internet Explorer, Edge 15 及更早 IE 版本不支持 sticky 定位。

超大文件上传和断点续传的实例解析

假如想象 提交于 2020-08-13 03:47:12
4GB以上超大文件上传和断点续传服务器的实现 随着视频网站和大数据应用的普及,特别是高清视频和4K视频应用的到来,超大文件上传已经成为了日常的基础应用需求。 但是在很多情况下,平台运营方并没有大文件上传和断点续传的开发经验,往往在网上找一些简单的PHP或者Java程序来实现基本的上传功能,然而在实际使用中会发现,这些基于脚本语言实现的上传功能模块性能很弱,一是不支持2GB以上的内容上传;二是无法支持断点续传;三是效率极低,单台服务器最多支持几十个并发上传连接。 当前我们要搭建一个运营级的视频服务平台,在尝试了各种产品均无法满足要求,因此最后花精力自主用C++语言实现了这一高性能上传服务器。 项目地址: http://git://10.168.4.241/up6/web/asp.net.git Hyper Upload Server 超级上传服务器 这是一款超级文件上传服务器,采用异步I/O架构,采用C++语言编码实现。它支持4GB以上超大文件上传和断点续传,支持Windows和Linux服务器平台,支持任意格式的文件上传,尤其适合大的视频网站应用。单台服务器支持1000并发上传进程,支持PC端和智能手机端主流的浏览器。 主要特性 1. 服务器端采用异步I/O架设设计,具有高性能I/O处理能力,尤其适用于超大文件上传; 2.

手把手教你使用Python抓取QQ音乐数据(第四弹)

风格不统一 提交于 2020-08-12 11:07:09
【一、项目目标】 通过 手把手教你使用Python抓取QQ音乐数据(第一弹) 我们实现了获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名、专辑名、播放链接。 通过 手把手教你使用Python抓取QQ音乐数据(第二弹) 我们实现了获取 QQ 音乐指定歌曲的歌词和指定歌曲首页热评。 通过 手把手教你使用Python抓取QQ音乐数据(第三弹) 我们实现了获取更多评论并生成词云图。 此次我们将将三个项目封装在一起,通过菜单控制爬取不同数据。 【二、需要的库】 主要涉及的库有:requests、openpyxl、html、json、wordcloud、jieba 如需更换词云图背景图片还需要numpy库和PIL库(pipinstall pillow) 如需生成.exe需要pyinstaller -F 【三、项目实现】 1.首先确定菜单,要实现哪些功能: ①获取指定歌手的歌曲信息(歌名、专辑、链接) ②获取指定歌曲歌词 ③获取指定歌曲评论 ④生成词云图 ⑤退出系统 代码如下: class QQ(): def menu(self): print('欢迎使用QQ音乐爬虫系统,以下是功能菜单,请选择。\n') while True: try: print('功能菜单\n1.获取指定歌手的歌曲信息\n2.获取指定歌曲歌词\n3.获取指定歌曲评论\n4.生成词云图\n5.退出系统\n')

IOS渠道统计困境及解决方案

一曲冷凌霜 提交于 2020-08-12 08:32:58
在开始之前,我们先来看看安卓的渠道统计。Google官方的应用商店Google Play在国内一直是无法使用的状态,所以国内的安卓App分发,都是依托数十个不同的应用市场或发行渠道,如百度、360、腾讯等互联网企业以及小米、华为、魅族等手机生产商。对于安卓App的渠道追踪,主要是围绕上面这些大的渠道来进行,并且这些渠道自己一般也会提供非常详尽和周全的数据分析给应用开发者。 iOS的发行渠道则与安卓有很大的不同,除了少数机器之外,大部分用户的App都是从 App Store下载的。iOS的“渠道”其实通常是指那些在其它App或者网页内部,提供到AppStore的链接的页面。因此,在iOS中追踪发行渠道,主要是追踪进入App Store相关页面的渠道信息。 但iOS的渠道追踪面临着一道无法逾越的鸿沟。正因为iOS的渠道分发都有跳转到App Store这一步,而Apple本身是不会提供太多信息给开发者,所以,对于整个流程的三个步骤:在某个渠道点击下载链接并跳转到App Store ---> App Store内下载App --->用户激活App,这其中的第二步,开发者无法获取相关信息,所以,没有办法精确地追踪一个用户在这三个步骤中的完整轨迹,也即没有办法精确地衡量渠道的具体推广效果。同时,安卓渠道效果分析中,常见的对于不同渠道打不同包的方案,在iOS分发时也是不可行的。

2020/6/10 JavaScript高级程序设计 BOM

本小妞迷上赌 提交于 2020-08-12 08:11:52
BOM(浏览器对象模型):提供用于访问浏览器的对象。 8.1 window对象 window是BOM的核心对象,表示浏览器的一个实例。 JavaScript访问浏览器窗口的接口 ECMAScript规定的Global对象 8.1.1 全局作用域 全局变量会成为window的属性,但是定义全局变量和直接在window对象上定义属性是有差别的—— 全局变量不能通过delete删除,但window对象上定义的可以 。 这是因为使用var添加的window属性[[Configurable]]被设置为false(不可删除)。 访问未声明的变量会发生错误,但通过查询window对象,可以知道某个可能未声明的变量是否存在。 // 这里会抛出错误,因为oldValue未定义 var newValue = oldValue; // 这里不会抛出错误,因为这是一次属性查询 var newValue = window.oldValue; // newValue的值是undefined 8.1.2 窗口关系及框架 如果页面中包含框架,则 每个框架都拥有自己的window对象 ,并保存在frames集合中。在frames集合中可以通过 数值索引/框架名称 来访问相应的window对象。每个window对象都有一个 name属性 ,其中包含框架的名称。 PS1 :对于 最高层窗口 来说

利用正则表达式对网络日志数据进行数据清洗

流过昼夜 提交于 2020-08-12 08:10:48
原数据: 183.49.46.228 - - [18/Sep/2013:06:49:23 +0000] "-" 400 0 "-" "-" 163.177.71.12 - - [18/Sep/2013:06:49:33 +0000] "HEAD / HTTP/1.1" 200 20 "-" "DNSPod-Monitor/1.0" 163.177.71.12 - - [18/Sep/2013:06:49:36 +0000] "HEAD / HTTP/1.1" 200 20 "-" "DNSPod-Monitor/1.0" 101.226.68.137 - - [18/Sep/2013:06:49:42 +0000] "HEAD / HTTP/1.1" 200 20 "-" "DNSPod-Monitor/1.0" 101.226.68.137 - - [18/Sep/2013:06:49:45 +0000] "HEAD / HTTP/1.1" 200 20 "-" "DNSPod-Monitor/1.0" 60.208.6.156 - - [18/Sep/2013:06:49:48 +0000] "GET /wp-content/uploads/2013/07/rcassandra.png HTTP/1.0" 200 185524 "http://cos.name/category