博士论文刷屏:他不是在《致谢》苦难,而是在致敬自己

博士论文刷屏:他不是在《致谢》苦难,而是在致敬自己

博士论文刷屏:他不是在《致谢》苦难,而是在致敬自己

《致谢》刷屏,句句扎心……

这篇文章来自寒门之子,2017年毕业于中国科学院自动化研究所的黄国平。
在文章的开篇,他说,“我走了很远的路,吃了很多的苦,才将这份博士学位论文送到你的面前。二十二载求学路,一路风雨泥泞,许多不容易。如梦一场,仿佛昨天一家人才团聚过。
一段话奠定全文基调,也揭开了这个年轻人“隐秘”的过往。
 

博士论文刷屏:他不是在《致谢》苦难,而是在致敬自己

年幼时亲人一一离去,靠着好心人的帮助和自己一路的努力,他终于博士毕业。那些无法言说的苦难,那些因贫穷而被触及的自尊,被他寥寥数笔勾勒。
在这平实的文字里,我们仿佛看见一个少年背着书包,从大巴山深处的炬光乡走到大寅镇,从仪陇县走到绵阳市,从重庆的西南大学走到中科院自动化所……
人们唏嘘,生活给他一个又一个重担,都他被用小小的肩膀扛了起来;
人们感叹,命运给他一次又一次暴击,都被他勇敢的内心克服。
穷且益坚,不坠青云之志”,但这都不足以来概括他的全部人生。
我们敬佩他的坚毅,也感怀他的身世。
我们在他身上,看到了知识如何改变命运,看到了学习如何改变人生。
黄国平的笔触展现了他不幸的身世,他并没有抨击黑暗,而感谢高中免了全部学杂费,感谢胡叔叔一家帮忙解决了生活费。
在全网的爆赞下,黄国平的故事描述成鸡汤体的正能量暖闻。
任何有良知的媒体和写作者都应该直陈时代的粗粝底色,这是基本的体面和教养。
赞美苦难是世间最大的恶。
有人说,因为经历了苦难,才更坚强。言下之意,苦难是坚强的根源,是苦难成就了坚强,要感谢苦难。
那么,一个人失去了双手,经过艰苦努力,用脚写出一脚好字,成为了书法家,难道这个人要感谢老天让他失去双手?
如果贫穷如此美好,如此值得感谢,如此值得歌颂,那各级政府为什么还要费尽九牛二虎之力去脱贫、精确扶贫呢?
因为贫穷,贵州的孩子们烤火熏死在垃圾箱;
因为贫穷,甘肃的杨改兰带着四个子女自杀;
因为贫穷,西南边陲的少年们攀爬天梯上学;
甚至因为贫穷,做爷爷和做父亲的,把九岁的智障女孩推进河里淹死,小女孩被打捞上来时,小小的书包里有九斤重的砖头……
贫穷家庭也出败类,富贵家族也出人杰,这种例子很多,不必一一列举。
不是贫穷困苦成就坚强,而是坚强的人没向贫穷困苦低头。是坚强让人多了成功机会,而不是贫苦让人成功。
正如知乎上一句话说得好:

苦难就是苦难,苦难不值得追求,磨练意志是因为苦难无法躲开。同样,贫穷就是贫穷,贫穷绝不值得感谢。

事实上,绝大多数贫困家庭的孩子,无论多么坚强,多么坚持和努力,他们在教育上成功的几率都远低于那些富裕家庭的孩子。这才是我们这个社会中的大问题。
富人的孩子未必不坚强、不努力,也未必锦衣玉食而不思进取。正如网上流行的段子,“比你有钱还比你努力”的大有人在。
富人家庭在孩子教育方面取得的成功,远非穷人家庭可比。富人家的孩子,也绝非电影和文学作品中描述的纨绔子弟那么不堪。
这个道理,别指望从电视剧、微信推文中弄懂。
看看劳动经济学家的大量研究,会明白家庭背景对个人成就的影响。
说实话,孩子的成就,就是踩在父母肩膀上的。这种影响是那么的顽固,以至于穷人家的孩子如果不努力一把,都不知道什么叫做绝望。
这大概也是为什么家境优裕的孩子考上清北人们并不稀奇,而一个贫寒子弟考上清北立即万众瞩目的原因。
我们当然要为穷人的孩子考上清北鼓掌,但是,如果“感谢苦难”成为一种宣传的口号,那实实在在是一针扎向社会的麻醉剂。
黄国平的成功是他自己不向命运低头的勇气,是身处底层而不言放弃的决心。
北京的高考状元熊轩昂父母都是外交官,他的思想更为理性、成熟。他说:
我觉得农村地区的孩子越来越难考上好学校,我是普通家庭长大的,但是衣食无忧,父母都是知识分子,而且在北京这种大城市,在教育资源上享受到这种得天独厚的条件可能是外地孩子或农村孩子所完全享受不到的,这种东西让我在学习的时候可能相对来说能走一些捷径。
近几年的高考状元,也很难再看到农村里面供养出来的,很多都是家境又好,自己又厉害的人。但我还是觉得,知识不一定能够改变命运,但是你没有知识是一定改变不了命运的。
个人,的确不应放弃努力。
但更重要的是,社会要给穷人改变命运的希望和机会。所以我们需要的,不是劝导人们去感谢贫穷,而是竭力克服家庭背景对于孩子成功的顽固影响。
这不是一个人的事,而是整个社会的事。
如果不能克服这种顽固的影响,社会阶层就会更加固化。
阶层更加固化的社会中,贫穷的家庭更难看到希望———就算感谢苦难,也改变不了深陷贫困泥沼的宿命。
最后,我想说,“感谢苦难”,是一碗热气腾腾的鸡汤,很励志,但对自己的人生毫无裨益。
贫穷不是成功的垫脚石,不是给生活锦上添的花,而是别无选择时不得不赤脚趟过的冰天雪地。
我们不感谢苦难,需要的是保障每个人免予贫穷的制度,
 
需要的是保障每个人拥有合法赚钱机会的机制!
如三角笔记所言:
底层少年没有被苦难摧垮,
是自己的骄傲,却不是社会的荣光。

参考资料:

红星新闻:中科院博士论文走红,在《致谢》里照见每一个自己

转自:https://mp.weixin.qq.com/s/TgEAOXAJOD9ZbGiJqVQCzQ

比特币,大势去矣?

比特币,大势去矣?
 
在一周之内接连突破6万美元、6.2万美元、6.4万美元大关的比特币,毫不意外的又回调了。
昨天上午短短几个小时内,比特币从接近6.1万美元直线跳水到5.4万美元左右。不过目前已经反弹回了5.7万美元左右。
 

比特币,大势去矣?

 

大哥跳水,其他加密数字货币自然也不能幸免,以太坊也从近2400美元的高点跌了近13%到2090美元。其他市值靠前的币种中,莱特币跌超20%,币安币(BNB)跌炒13%,瑞波币跌超20%,前两天刚刚一天翻倍的狗狗币跌近13%。
 

比特币,大势去矣?

 

昨天上午10 点到今天上午10点的24小时中,加密数字货币全网合约爆仓人数飙升超过47万人次,爆仓金额近400亿美元
受此影响,今天港股区块链概念全线走低。
 

比特币,大势去矣?

 

说好的“数字黄金”怎么又暴跌?

01

Coinbase不背锅
作为加密数字货币交易所的“币交所第一股”——Coinbase,美东时间4月14日在纳斯达克上市。
交易首日开盘价为381美元,并迅速飙升至近430美元,然后跳水回到313美元,最终收涨31.31%,报328.28美元,总市值645.92亿美元。两个交易日过后,目前Coinbase的股价报342美元,总市值672.92亿美元。
关于Coinbase上市引发此前比特币以及整个加密数字货币市场暴涨行情的讨论详见《全民炒币时代?》
但是,上市3天,Coinbase CEO共以不同价格分三次出售了75万股,总市值约2.92亿美元的公司股票;CFO以388.73美元的价格清仓了自己持有的25.55万股,总市值约9932万美元的公司股票。
许多市场声音将近两天中比特币的暴跌行情归因于Coinbase上市3天,高管及内部人事累积套现46亿美元
 

比特币,大势去矣?

 

或许是出于巧合,比特币在昨日午后的暴跌确实是和Coinbase高管集体套现相关的报道在同一时间段出现的。
但这个理解显然是对Coinbase的上市存有误会。
Coinbase采用的是去年12月23日美国证监会批准的新上市模式——直接上市(DPO – Direct Public Offering),这种上市模式下公司不发行新股,只需要将公司原始股进行登记,即可于上市首日开始在二级市场自由交易
换句话说,高管上市首日“套现”是直接上市的必选项,原始股东减持是二级市场上有股份可买的唯一途径。
对于这一点,进场接盘的散户绝大部分应该有所了解,但在加密数字货币市场上不排除部分投资者被“币交所上市首日高管集体减持”的标题党所影响,从而引发了抛售情绪。
毋庸置疑的是,比特币行情短期的波动几乎都是由情绪主导。
但情绪引发的波动往往容易引发暴涨暴跌的主要原因,还是由于加密数字货币杠杆率过高
加密数字货币的期货合约目前堪比赌场,10倍、50倍、甚至100倍的杠杆都有。
 

比特币,大势去矣?

 

而很多人以为只要杠杆倍数足够低、保证金放的足够多,就没有爆仓的风险,这显然也是一个误会。
这样的高杠杆率导致哪怕比特币价轻微波动,都很容易造成爆仓。即使只是一倍的杠杆,本金全亏还要被迫平仓的情况也会发生。
今年2月的前两周,比特币从3.5万美元飙升到5万美元关口期间,比特币全网爆仓金额超过177亿元。
涨势下也不断有人爆仓,回调自然更容易导致爆仓到暴跌的连锁反应。 
截至4月13日,市场上基差高达50%,资金费率高达150%,看涨情绪导致期货市场过热,做空比特币的动机自然也在短时间内迅速累积
不过,比特币毕竟是一个有暴跌80%、一夜回到解放前前科的资产,每一次比特币较大规模的回调,也会引发关于比特币是不是要“昨日重现”、“泡沫破裂”的联想甚至恐慌。

02

钮祜禄·比特币
比特币上一个大牛市始于17年。
那一年最大的国际性事件是英国致函欧盟,将正式启动“脱欧”程序,以及特朗普当选了美国总统
在发布于2019年的一项调查中,63%的受访者认为脱欧仍是金融市场风险和不确定性的主要来源之一,而比特币是这种不确定性的受益者。
更重要的是,2017年10月31日,芝加哥商业交易所宣布将在17年四季度上线比特币期货合约,直接导致了比特币价格在一个月的时间里从6500美元冲高到了近2万美元的史高
 

比特币,大势去矣?

 

将时间线拉回到本轮牛市,伴随比特币价格暴涨的,是不断释出的机构、上市公司配置比特币的新闻,以及越来越多原本认为比特币一文不值的投资大佬,比如达利欧,开始松口,表示比特币在目前来说确实是一个可以考虑的投资标的的消息。
截至2020年12月15日,持有比特币市值超过5000万美元的机构共有23家,持仓总量近89万枚。2021年2月8号,特斯拉向美国证监会提交的年报,“无意中”透露了公司已经购买了价值约15亿美元的比特币。
没过多久,特斯拉官宣其产品接受比特币支付;美国加州房地产巨头卡鲁索地产公司(Caruso properties)随后也宣布接受联手和商业地产租户以比特币支付房租;
上周,连《时代》周刊都宣布将与灰度(Grayscale)合作推出和加密货币相关的系列视频,并宣布接受比特币支付,而且《时代》周刊表示,并不会将受到的比特币转换为法币,而是作为现金资产放在资产负债表上。
 

比特币,大势去矣?

 

可以看出,无论是2017年还是2020年,比特币暴涨的逻辑是一样的——受到认可,就涨
2017年底比特币登陆期权、期货市场,2020年底比特币被机构加入配置、“币交所”上市,都是资本市场在给比特币以一个“名分”,而比特币最大的利空就是它没有名分,那么认可多一点,自然价格就飙一点
而进入18年比特币暴跌80%,一夜回到解放前,也是因为比特币登陆了期货市场。
北京时间2017年12月11日,芝加哥期权交易所以XBT为代码正式上线了比特币期货交易,由于交易火爆、价格飙升,XBT上线首日两次“熔断”。
一周后,体量更大的芝加哥商品交易所,也上线了比特币期货。而比特币期货在这个全球成交量最大的期货交易所上线之时,也是比特币牛市结束之日。
在比特币期货上线前,市面上没有比特币的衍生品,没有期货合约也没有掉期交易,换句话说就是,在2017年12月以后,比特币终于可以做空了
2018年的比特币,虽然终于有了期货交易,迈进了大宗商品交易所,被当成了一种“商品”。
但当时,比特币的投资主体仍然是散户,可做空比特币的都是手握大量资产的金融巨鳄,他们利用了当时散户对于区块链技术的了解存在局限性,戳破了比特币2017年末的“情绪泡沫”。
这一点在2018年5月美联储发布的报告得到了证实,报告称,比特币从接近2万美元跌去80%的原因正是期货市场的开放。 
无独有偶,就在上周四,全球首支反向比特币ETF在多伦多交易所上市了。
上一轮比特币的牛市结束于比特币可以做空了,那么这一轮比特币的牛市会结束于投资者已经无需保证金账户或做空期货就可以做空比特币了吗?
恐怕不会。
因为上一次,绝大部分的机构是空头,而绝大部分的散户是多头,多空力量严重失衡。而现在,已经有机构大量的涌入了多头的一边,资本力量逐渐向多头倾斜,反向ETF这种完全针对散户的做空工具,基本已经撬不动另一头了
另一方面,散户对比特币的“信仰”,与17年不可同日而语。
 

比特币,大势去矣?

(蓝线:比特币价格 橙线:非流动比特币数量 黄线:流动比特币数量)
从上图可以看出,从19年年初开始,流动性中的比特币并没有随着比特币开采量的升高而升高,反而是逐年下降,到2020年已经回到了17年牛市中的水平。
与之相反的是,非流动的比特币数量逐年攀升,目前已占到比特币开采量的70%以上。
这表明,有70%以上的比特币根本没有被拿出来“炒”, 也证明了越来越多的人不再相信比特币的价值会“一夜归零”。
比特币还是那个比特币,但比特币的逻辑已经变了。
 

03

名分带来的“苦恼”
不过,机构配置比特币也同样给比特币带来了“烦恼”,那就是其价格波动受外部环境影响的变化会更大。
这直观的体现在原本不受宏观经济与周期影响的比特币,最近也开始随着美债收益率以及通胀预期而波动,与黄金和科技股的价格走势趋同。
另一方面,虽然比特币多空对弈的阵营发生了明显变化,但来自各国政府的监管政策不确定性仍是影响加密市场情绪的首要因素
比特币越涨,来自监管的关注和压力自然也就越多。
无可避免的,昨天回调也被归因为了前几天土耳其宣布禁止比特币作为货币进行支付,而后印度又传将持有虚拟货币列为犯罪行为所产生的影响。
比特币上一次大幅回调的主要原因也是2月22日晚美国财政部部长耶伦直言比特币不但经常被用于非法融资,还具有高度投机性。
这番言论导致大量机构投资者担心比特币面临更严厉监管而集体抛售离场,比特币一夜暴跌15%。
 

比特币,大势去矣?

 

不过,不难发现,目前国际主要经济体对待比特币的态度都以严监管为主,包括推行实名制以及限制跨境资产转移等。美联储和财政部在强调比特币投机性过高的同时,未对比特币作为投资标的的地位作出否定,我国央行也将比特币定义为了另类投资品
因此,所谓的比特币重大利空,比如将持有或者交易比特币列为违法行为的可能性并不高(当然交易比特币从事违法行为肯定是不允许的)。反而是会正视比特币为一种资产而进行监管。
无论何种投资标的,过度上涨之后必然回调,比特币作为能加100倍杠杆的资产,涨起来疯、跌起来更疯,也不应太过意外。
最大的比特币信托基金Grayscale Investments(灰度资产)的首席执行官Michael Sonnenshein表示,“从2016年到2017年,在达到新高的过程中,比特币经历了6次约30%或幅度更大的回调。” 
而各国的监管措施短期内有助于挤出加密货币市场的投机水分,长期看也利好加密货币的合法、合规发展。
而当投机趋于投资,伴随着比特币过山车行情的消失,比特币的赚钱效应自然也会打个折。 
毕竟,没有什么波动,从来不是比特币吸引人的特质。
 

比特币,大势去矣?

— 本文作者介绍 —

比特币,大势去矣?

转自:https://mp.weixin.qq.com/s/MrqUiZiSgy22zLSD4Qb4Og

Scrapy 爬虫框架 10 分钟快速入门

作者:wedo实验君

来源:Python中文社区

1. scrapy简介

scrapy是基于事件驱动的Twisted框架下用纯python写的爬虫框架。很早之前就开始用scrapy来爬取网络上的图片和文本信息,一直没有把细节记录下来。这段时间,因为工作需要又重拾scrapy爬虫,本文和大家分享下,包你一用就会, 欢迎交流。

1.1 scrapy框架

scrapy框架包括5个主要的组件和2个中间件Hook。

  • ENGIINE:整个框架的控制中心, 控制整个爬虫的流程。根据不同的条件添加不同的事件(就是用的Twisted)
  • SCHEDULER:事件调度器
  • DOWNLOADER:接收爬虫请求,从网上下载数据
  • SPIDERS:发起爬虫请求,并解析DOWNLOADER返回的网页内容,同时和数据持久化进行交互,需要开发者编写
  • ITEM PIPELINES:接收SPIDERS解析的结构化的字段,进行持久化等操作,需要开发者编写
  • MIDDLEWARES:ENGIINESPIDERS, ENGIINEDOWNLOADER之间一些额外的操作,hook的方式提供给开发者

从上可知,我们只要实现SPIDERS(要爬什么网站,怎么解析)和ITEM PIPELINES(如何处理解析后的内容)就可以了。其他的都是有框架帮你完成了。(图片来自网络,如果侵权联系必删)

Scrapy 爬虫框架 10 分钟快速入门

1.2 scrapy数据流

我们再详细看下组件之间的数据流,会更清楚框架的内部运作。(图片来自网络,如果侵权联系必删)

Scrapy 爬虫框架 10 分钟快速入门

    1. SPIDERS发爬虫请求给ENGIINE, 告诉它任务来了
    2. ENGIINE将请求添加到SCHEDULER调度队列里, 说任务就交给你了,给我安排好
    3. SCHEDULER看看手里的爬取请求很多,挑一个给ENGIINE, 说大哥帮忙转发给下载DOWNLOADER
    4. ENGIINE:好的, DOWNLOADER你的任务来了
    5. DOWNLOADER:开始下载了,下载好了,任务结果 交给ENGIINE
    6. ENGIINE将结果给SPIDERS, 你的一个请求下载好了,快去解析吧
    7. SPIDERS:好的,解析产生了结果字段。又给SPIDERS转发给ITEM PIPELINES
    8. ITEM PIPELINES: 接收到字段内容,保存起来。

第1步到第8步,一个请求终于完成了。是不是觉得很多余?ENGIINE夹在中间当传话筒,能不能直接跳过?可以考虑跳过了会怎么样。

这里分析一下

  • SCHEDULER的作用:任务调度, 控制任务的并发,防止机器处理不过来
  • ENGIINE:就是基于Twisted框架, 当事件来(比如转发请求)的时候,通过回调的方式来执行对应的事件。我觉得ENGIINE让所有操作变的统一,都是按照事件的方式来组织其他组件, 其他组件以低耦合的方式运作;对于一种框架来说,无疑是必备的。

2. 基础:XPath

写爬虫最重要的是解析网页的内容,这个部分就介绍下通过XPath来解析网页,提取内容。

2.1 HTML节点和属性

(图片来自网络,如果侵权联系必删)

Scrapy 爬虫框架 10 分钟快速入门

2.2 解析语法

  • a / b:‘/’在 xpath里表示层级关系,左边的 a是父节点,右边的 b是子节点
  • a // b:表示a下所有b,直接或者间接的
  • [@]:选择具有某个属性的节点
    • //div[@classs], //a[@x]:选择具有 class属性的 div节点、选择具有 x属性的 a节点
    • //div[@class=”container”]:选择具有 class属性的值为 container的 div节点
  • //a[contains(@id, “abc”)]:选择 id属性里有 abc的 a标签

一个例子

response.xpath('//div[@class="taglist"]/ul//li//a//img/@data-original').get_all()
# 获取所有class属性(css)为taglist的div, 下一个层ul下的所有li下所有a下所有img标签下data-original属性

# data-original这里放的是图片的url地址

更多详见

http://zvon.org/comp/r/tut-XPath_1.html#Pages~List_of_XPaths

3. 安装部署

Scrapy 是用纯python编写的,它依赖于几个关键的python包(以及其他包):

  • lxml 一个高效的XML和HTML解析器
  • parsel ,一个写在lxml上面的html/xml数据提取库,
  • w3lib ,用于处理URL和网页编码的多用途帮助程序
  • twisted 异步网络框架
  • cryptography 和 pyOpenSSL ,处理各种网络级安全需求
# 安装
pip install scrapy

4. 创建爬虫项目

scrapy startproject sexy

#
 创建一个后的项目目录
# sexy
# │  scrapy.cfg
# │
# └─sexy
#     │  items.py
#     │  middlewares.py
#     │  pipelines.py
#     │  settings.py
#     │  __init__.py
#     │
#     ├─spiders
#     │  │  __init__.py
#     │  │
#     │  └─__pycache__
#     └─__pycache__

#
 执行 需要到scrapy.cfg同级别的目录执行
scrapy crawl sexy

从上可知,我们要写的是spiders里的具体的spider类和items.py和pipelines.py(对应的ITEM PIPELINES

5. 开始scrapy爬虫

5.1 简单而强大的spider

这里实现的功能是从图片网站中下载图片,保存在本地, url做了脱敏。需要注意的点在注释要标明

  • 类要继承 scrapy.Spider
  • 取一个唯一的name
  • 爬取的网站url加到start_urls列表里
  • 重写parse利用xpath解析reponse的内容

可以看到parse实现的时候没有转发给ITEM PIPELINES,直接处理了。这样简单的可以这么处理,如果业务很复杂,建议交给ITEM PIPELINES。后面会给例子

# 目录结果为:spiders/sexy_spider.py
import scrapy
import os
import requests
import time


def download_from_url(url):
    response = requests.get(url, stream=True)
    if response.status_code == requests.codes.ok:
        return response.content
    else:
        print('%s-%s' % (url, response.status_code))
        return None


class SexySpider(scrapy.Spider):
   # 如果有多个spider, name要唯一
    name = 'sexy'
    allowed_domains = ['uumdfdfnt.94demo.com']
    allowed_urls = ['http://uumdfdfnt.94demo.com/']

    # 需要爬取的网站url加到start_urls list里
    start_urls = ['http://uumdfdfnt.94demo.com/tag/dingziku/index.html']
    save_path = '/home/sexy/dingziku'

    def parse(self, response):
        # 解析网站,获取图片列表
        img_list = response.xpath('//div[@class="taglist"]/ul//li//a//img/@data-original').getall()
        time.sleep(1)

        # 处理图片, 具体业务操作, 可交给items, 见5.2 items例子
        for img_url in img_list:
            file_name = img_url.split('/')[-1]
            content = download_from_url(img_url)
            if content is not None:
                with open(os.path.join(self.save_path, file_name), 'wb'as fw:
                    fw.write(content)

        # 自动下一页(见5.3 自动下一页)
        next_page = response.xpath('//div[@class="page both"]/ul/a[text()="下一页"]/@href').get()
        if next_page is not None:
            next_page = response.urljoin(next_page)
            yield scrapy.Request(next_page, callback=self.parse)

5.2 items和pipline例子

这里说明下两个的作用

  • items:提供一个字段存储, spider会将数据存在这里
  • pipline:会从items取数据,进行业务操作,比如5.1中的保存图片;又比如存储到数据库中等

我们来改写下上面的例子

  • items.py其实就是定义字段scrapy.Field()
import scrapy
class SexyItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    img_url = scrapy.Field()
  • spiders/sexy_spider.py
import scrapy
import os
# 导入item
from ..items import SexyItem

class SexySpider(scrapy.Spider):
   # 如果有多个spider, name要唯一
    name = 'sexy'
    allowed_domains = ['uumdfdfnt.94demo.com']
    allowed_urls = ['http://uumdfdfnt.94demo.com/']

    # 需要爬取的网站url加到start_urls list里
    start_urls = ['http://uumdfdfnt.94demo.com/tag/dingziku/index.html']
    save_path = '/home/sexy/dingziku'

    def parse(self, response):
        # 解析网站,获取图片列表
        img_list = response.xpath('//div[@class="taglist"]/ul//li//a//img/@data-original').getall()
        time.sleep(1)

        # 处理图片, 具体业务操作, 可交给yield items
        for img_url in img_list:
            items = SexyItem()
            items['img_url'] = img_url
            yield items
  • pipelines.py
import os
import requests


def download_from_url(url):
    response = requests.get(url, stream=True)
    if response.status_code == requests.codes.ok:
        return response.content
    else:
        print('%s-%s' % (url, response.status_code))
        return None


class SexyPipeline(object):

    def __init__(self):
        self.save_path = '/tmp'

    def process_item(self, item, spider):
        if spider.name == 'sexy':
            # 取出item里内容
            img_url = item['img_url']
            
            # 业务处理
            file_name = img_url.split('/')[-1]
            content = download_from_url(img_url)
            if content is not None:
                with open(os.path.join(self.save_path, file_name), 'wb'as fw:
                    fw.write(content)
        return item
  • 重要的配置要开启settings.py中开启piplines类,数值表示优先级
ITEM_PIPELINES = {
   'sexy.pipelines.SexyPipeline'300,
}

5.3 自动下一页

有时候我们不仅要爬取请求页面中的内容,还要递归式的爬取里面的超链接url,特别是下一页这种,解析内容和当前页面相同的情况下。一种笨方法是手动加到start_urls里。大家都是聪明人来试试这个。

  • 先在页面解析下下一页的url
  • scrapy.Request(next_page, callback=self.parse) 发起一个请求,并调用parse来解析,当然你可以用其他的解析

完美了,完整例子见5.1

next_page = response.xpath('//div[@class="page both"]/ul/a[text()="下一页"]/@href').get()
if next_page is not None:
   next_page = response.urljoin(next_page)
   yield scrapy.Request(next_page, callback=self.parse)

5.4 中间件

  • 下载中间件 中间件的作用是提供一些常用的钩子Hook来增加额外的操作。中间件的操作是在middlewares.py。可以看到主要是处理请求process_request,响应process_response和异常process_exception三个钩子函数。
  • 处理请求process_request: 传给DOWNLOADER之前做的操作
  • 响应process_responseDOWNLOADERENGIINE响应之前的操作

这里举一个添加模拟浏览器请求的方式,防止爬虫被封锁。重写process_request

from scrapy.contrib.downloadermiddleware.useragent import UserAgentMiddleware
import random
agents = ['Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;',
              'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv,2.0.1) Gecko/20100101 Firefox/4.0.1',
              'Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11',
              'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11',
              'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)']

class RandomUserAgent(UserAgentMiddleware):
    def process_request(self, request, spider):
        ua = random.choice(agents)
        request.headers.setdefault('User-agent',ua,)

统一要在settings.py中开启下载中间件,数值表示优先级

DOWNLOADER_MIDDLEWARES = {
    'sexy.middlewares.customUserAgent.RandomUserAgent'20,
}

5.5 可用配置settings.py

除了上面提供的pipline配置开启和中间件配置外,下面介绍几个常用的配置

  • 爬虫机器人规则:ROBOTSTXT_OBEY = False, 如果要爬取的网站有设置robots.txt,最好设置为False
  • CONCURRENT_REQUESTS:并发请求
  • DOWNLOAD_DELAY:下载延迟,可以适当配置,避免把网站也爬挂了。

所有的配置详见 https://doc.scrapy.org/en/latest/topics/settings.html

6. 总结

相信从上面的介绍,你已经可以动手写一个你自己的爬虫了。我也完成了做笔记的任务了。scrapy还提供更加详细的细节,可参见https://docs.scrapy.org/en/latest/

最后总结如下:

  • scrapy是基于事件驱动Twisted框架的爬虫框架。ENGIINE是核心,负责串起其他组件
  • 开发只要编写spider和item pipline和中间件, download和schedule交给框架
  • scrapy crawl 你的爬虫name,name要唯一
  • 爬取的url放在start_urls, spider会自动Request的,parse来解析
  • pipline和中间件要记得在settings中开启
  • 关注下settings的常用配置,需要时看下文档

 

作者简介:wedo实验君, 数据分析师;热爱生活,热爱写作

转自:https://mp.weixin.qq.com/s/4gABstkXc5i6DYxU9fpsvA

猿辅导作业帮必有一伤,好未来新东方渔翁得利!

眼看他起朱楼,眼看他宴宾客,眼看他楼塌了。

——清·孔尚任·《桃花扇》

 

月儿弯弯照九州,几家欢乐几家愁。

——南宋·民歌

 

互联网加速了这个高楼宾客的过程,尤其是这一波接近5年的在线教育风口,资本是最大的鼓风机。

 

一时间有人融资十亿美金,有人纳斯达克百亿身价,有人膨胀到要杀入福布斯排行榜,有人拿奖拿到手发软,有人觉得财务即将自由,有人在LP面前飘飘然。泡沫给了所有人幸福感——的想象力。

 

然而一则重复代言多家公司的教育广告,引发行业的蝴蝶效应,相关部门一纸令下接一纸令下,凛冬骤至,远胜疫情。

 

在线教育的楼暂时还不会崩塌,但部分鼓风机有可能彻底成为套牢盘,这让整个江湖充满了唏嘘戏谑的味道,他们偷偷在笑。

 

教育是什么?在线教育是什么?

资本是什么?资本退出是什么?

 

读完本文,可能会对部分投资人引发不适,但是请相信我的话,他们不会长记性的。

 

因为,托·约·邓宁在《工联和罢工》1860年伦敦版第35、36页里早就写到:“资本害怕没有利润或利润太少,就像自然界害怕真空一样。一旦有适当的利润,资本就胆大起来。如果有10%的利润,它就保证到处被使用;有20%的利润,它就活跃起来;有50%的利润,它就铤而走险;为了100%的利润,它就敢践踏一切人间法律;有300%的利润,它就敢犯任何罪行,甚至冒绞首的危险。”

 

谁是这波在线教育风口最大的赢家,谁是这波在线教育风口最大的套牢盘?且听April正儿八经的胡扯八道,请一笑而过切勿当真。

 

桃李财经「产业观察」第23篇。

 

文/ April

出品/ 桃李财经

 

01

猿辅导作业帮必有一伤

老大先上市,老二就真被动了!

 

近来,不时有媒体提醒大家,不要忘记资金断裂倒闭的学霸君。

 

然而在教育领域的狂飙突进中,这些声音仿佛祥林嫂的呓语,丝毫无法影响鲁镇热闹的新年。

 

过去一年,教育赛道持续高歌猛进,全年流入资金超千亿,占据细分领域榜首的K12教育自然风头无两,仅非上市教育机构融资额就超过700亿元。

 

其中,8家D轮及公司拿下了450多亿,猿辅导200亿元,作业帮150亿。一个在一年内融了三轮,一个在一年内融了两轮,一面光速拿钱,一面加速攻城略地。

 

融资角力意味着冲刺开始,也说明见分晓的时刻到了。在这场比赛中,猿辅导和作业帮争夺标的不仅仅是互联网教育第一把交椅,更是活下去的权利。

 

毕竟,过去十几年,互联网垂直领域一致遵循着一条不成文的魔咒:老大只有一个,而老二必须死。

 

特别奇怪,事实上在线教育的巨头有七八家之多,但无论是媒体还是行业,都习惯性将这两家放到一起类比,以至于形成错觉。

 

比如,谈及猿辅导新东方好未来跟谁学,我们会认为市场很大,足以容纳N家上市公司。一旦,谈及猿辅导作业帮,仿佛二者就在血拼厮杀,只能允许一家胜出一家离场。

 

这不是错觉,这是事实。

 

从资本层来看,两家背后的VC盘根错节,二级市场只能给出一家超高估值溢价,另一家则会非常被动。

 

此刻,猿辅导和作业帮到底哪一个好?就不仅仅是家长的疑问了。

 

从外表看,猿辅导和作业帮似乎很像。在秉承用互联网改造教育培训行业的理念上,惊人一致。从工具引流到培训变现的逻辑,如出一辙。就连在走弯路不顾成本大搞一对一小班教学上,也半斤八两。从有钱后就拼命投放、大打擂台上,不分伯仲。

 

以至于网友吐槽:一个公交车站有四个广告牌,其中两个猿辅导,另外两个是作业帮。

 

那么,想要分析二者区别。只能回归到产品运营本身。

 

首先看数据。猿辅导官网显示,累计用户过4亿;作业帮官网显示,累计用户破8亿,是猿辅导的两倍。从用户月活数据来看,作业帮也碾压猿辅导,2020年3月,作业帮月活用户数10510万人,是教育行业唯一月活用户过亿App,两个月后,更是涨到1.7亿。而同一时期,猿辅导旗下的小猿搜题月活用户数为2311万,猿题库刚过1000万,其他产品尚且都未达到千万级别。

 

然而,用户量优势却未必能转换为营收优势。尽管“每十个孩子有七个在作业帮学习”,却不一定在作业帮花钱。据估算,2020年作业帮的营业收入大约与猿辅导持平,都是100亿元左右(猿辅导包括粉笔公考,约12亿)。

 

原因就是作业帮的转化率太低了。以2020暑期为例,作业帮暑期新增正价班学员171万,2019年暑期正价班人数为49万,一年增加了122万。如果说这些学员来自于作业帮“春季免费直播课”引流的3300万中小学生,那么转换率才3%—4%。

 

数据的指向是:作业帮似强实弱,而猿辅导似弱实强。

 

其次看产品矩阵和闭环。猿题库和作业帮都是多品牌战略,都覆盖练练、测、评、备、教这五个要素组成的学习闭环。

 

流量产品,小猿搜题vs作业帮App。两者都是教育产品中使用最简单、最轻量、覆盖面最广,也是流量池。

 

精准题库:小猿口算、猿题库vs作业帮口算。猿辅导多了一个针对初高中生的题库工具,定位更精准。

 

盈利课程:斑马AI课、猿辅导、猿编程vs作业帮直播课课程是各家营收的主力产品,而作业帮主要是专注K12。猿辅则涉及了学龄前和STEAM,用户在猿辅导的体系内留存的可能性更大,时长更长。

 

从产品布局来看,猿辅导更胜一筹。这也是猿辅导更受业界看好的原因。

 

这里反转一下,因为非上市公司公布数据,以上数字几乎没有任何意义,只能证明一点:两家在玩数字游戏的竞争。

 

总体看来作业帮更像那个老二,行业老二的命运之所以残酷,是因为从不掌握在自己手里,而是背后必须要拿到回报的投资人。

 

对于行业老二来说,提前上市是迫不得已的最优解。

 

如果友商先上市,往往意味着自己的命运被竞争对手遏制住,把自己陷入到万劫不复的被动中。

 

所以,作业帮最好的结局就是抢先上市博取一线机会;次之是在两家都未上市的时候,提前谋求合并,高管退出,让投资人集体回血;最下策,则是等猿辅导上市后,把自己陷入到极其被动的局面。

 

这样就比较好理解了,为什么从1月至今,屡次有作业帮上市的传闻,在试探资本的风向,更在试探竞品的态度。

 

来自网易科技报道,行业资深人士郭涛告诉《态℃》栏目,“作业帮着手准备上市材料晚于猿辅导,而且后者成立时间、融资轮次也更多,猿辅导大比例会先上(市)。” 另一位靠近作业帮的人士则直接反驳,“谁先(上市)不一定。”

 

我们来拆解作业帮的心理:

 

从短期看,二级市场对在线教育还在观望阶段,资本供血严重不足,过早的启动上市有可能流血惨重,一定会引发老股东不满,甚至会影响后续业务竞争格局。

 

如果被猿辅导暗中抢先一步,那结果会更惨,资本血库被抽空,届时会满盘皆输,基本没有翻盘指望。

 

这里回答两个关键问题:

 

第一,还有少数人会问,一定要上市吗?上市是唯一的出路吗?不上市扎扎实实做好业务不也挺好的吗?这是没拿过资本钱的人才会问的问题,你很难想象几十家VC纠缠在一起,以及几十家VC背后的LP,会带来多大的精神负担?尤其是,等到两家真正公布创始团队股权比例的时候,大家才会恍然大悟,资本与创业者的博弈有多么血腥。

 

第二,一定要争个鱼死网破,不能共存吗?请注意措辞,这里指的是“必有一伤”,不是说两家一定有一家会死。想象一下,两家都在高速上飙车,重型卡车严重超载时速150公里,急刹车的情况下会发生什么?急速变道会发生什么?这太考验司机的驾驭能力了。对于猿辅导作业帮来说,想活的像网易有道这样的小而美,基本没有机会了。

 

所以,留给VC们退出的时间不多了,留给猿辅导作业帮上市的时间也不多了,留给李勇和侯建彬做决策的时间也不多了。

 

两家都融了几十亿美金,两家都有好几万员工,两家都有数百位渴望财务自由的高管团队。

 

注定会有一家梦里笑醒,一家梦里破碎。

 

有的梦,挺血腥的。

 

02

好未来新东方渔翁得利

张邦鑫俞敏洪窃喜,姜啊还是老的辣!

 

自从在线教育大火,对好未来和新东方的吐槽,就不绝于耳。一般分成这样几类:

 

· 两家反应太慢,竟然从眼皮子底下杀出来几个巨头;

· 张邦鑫和俞敏洪老了,跟不上在线教育的步伐了;

· 两大巨头的位置可能要动一动了;

· 尤其新东方,连个网课都搞不好,IT落后时代;

· ……

 

桃李财经有个九年风口论,可以和大家念叨念叨。

 

任何一个大型赛道风口来临,前三年泡沫>实力,中三年泡沫≈实力,后三年泡沫<实力。

 

我们可以看到,确实在线教育火的前几年,两大古典巨头被舆论虐的体无完肤,仿佛世界变了天,但舆论就是泡沫中的泡沫,最不能代表真相的东西。

 

在线教育企业的的入场虽然足够惊艳,但更像是热场。与真正改变行业相比,几家头部企业更多的是为教育行业带来了更多的关注,成为加速教育行业的爆发的催化剂。

 

让我们把视野拉回历史。

 

2006年,新东方成了在美国上市的第一家中国教育公司,这一年,媒体预计中国网络教育的规模将达到202亿元,数字前面是创纪录,数字后面是大大的感叹号。而2020年在线教育行业市场规模已经是2573亿元。

 

在往前一年,2005年,也是学而思(好未来前身)成立的第三年,国家统计局公布数据显示,校外培训市场规模约3000亿。

 

而2019年,仅K-12校外辅导市场的总市场规模就7000亿,预计到2024年将进一步增至11,731亿元。甚至还有些研究机构认为,我国K12 课外培训整体渗透率仅为36.7%,对比文化相近的东亚地区,尚有较大提升空间。

 

水涨则船高。十年之前,好未来营收不过6959万美元。十年之后,它最新财报营收,已达32.73亿美元,增长了47倍。

 

曾经,中概股在无限冷落好未来、新东方的市值,始终控制在500亿美金以内,和互联网巨头差了好几个量级,因为实在找不到高溢价的可能性。

 

但是在线教育的风口打开了这个阀门,如果不是因为相关政策原因,800亿美金的好未来、500亿美金的新东方可能就在眼前了。

 

两大古典教育巨头,能够多年屹立不倒,自然各有生存智慧,对教育深耕的硬实力,政策洞察方面的软实力,以及对资本游戏的理解力,都不是娃娃们后辈能想象的。

 

且听桃李一一道来。

 

张邦鑫按奈不住的窃喜,好未来才是最大的赢家!

 

某种程度上来讲,运气是站在好未来这边的,因为好未来对运气的把握非常充分。

 

1、扎实的教研教学基本面

 

从2017年开始,好未来当之无愧是教育龙头股,得益于其多年扎实的教研教学基本面。

 

用最现实最功利的角度来看,全国5000万名初中生、2000万名高中生,996全年无休的的上课、补习、做题,最终指向的结果都是升学考试。因此,作为教育产品,再多的模式创新,再多的锦上添花,唯一能够击穿家长续费的就是考试成绩。

 

提分最有效,对考试帮助最大,是家长对好未来的印象。如同春运抢票一般,在深夜搬着小板凳排队,守着电脑拼手速抢名额则是家长们的最高认可。

 

张邦鑫的“单点极致”策略已经经过验证,在北京做到5万学员时,仍只做数学。直到数学做到市场第一名后,才开始做理科品类。理科做到第一名时,才做英语。做英语做到top2,才做语文。好未来的“谨慎扩科,要不不做,要做就做到第一。”让家长们抢着买单。

 

流量不一定能够塑造品牌,品牌却一定可以带来流量。教育赛道,品牌不但意味着定价权,也意味着高续费率,意味着成熟的商业模式。

 

这里不过分多说。

 

2、打开竞争阈值,学而思网校并没有掉队

 

过去好未来新东方占行业比重不到5%,主要因为教育行业不是均质化格局,以K12线下培训为例,尽管大型机构在一二线城市的校区数占比超90%,而三四线还是小机构的天下。

 

然而疫情期间,随着免费直播课的开启,学而思网校的用户结构有了极大的转变,三、四、五线城市的用户远远超过了一二线城市,一改线上80%的用户主要来自于一二线城市的局面。

 

看来,疫情带来的停课不停学,不仅是互联网教育企业的机会,同样也是古典教育巨头的机会。

更何况,早在早在2003年非典时,张邦鑫就已经学会了如何变通、抓住机会打通线上线下,通过线上的平台积累了潜在的用户群体。

 

2021财年二季报,好未来在线教育业务收入已占整体营收的40%。同时,线上线下用户比例也有了较大调整,在大多数城市,在线人数占比也可以达到15%-25%。

 

即使学而思网校的头部优势不那么明显,即使学而思网校还在局部亏损之中。

 

同样的故事,用在好未来身上,好像靠谱系数总是高那么一点。

 

3、悄无声息的融了48亿美元

 

2020年11月,好未来披露,全球增长投资公司已同意购买总计约15亿美元的好未来新发行A类普通股。

 

2020年12月,好未来宣布与Silver Lake银湖等达成33亿美元私人配售协议,其中23亿美元为可转换债券,10亿美元为新发行的A类普通股。

 

根据多知网报道数据,在一级市场上,猿辅导总共融资超过35亿美元,作业帮总共融资23.5亿美元;二级市场上,好未来总共融资48亿美元,跟谁学总共融资8.7亿美元。

 

2020年,好未来不声不响的融资48亿美元,加上原有丰实的家底,好未来现在的底气十足。

 

我们来拆解张邦鑫现在的心态:

 

进可攻,你们要玩亏损,要玩获客,要玩资本故事,只要基础模型跑的通,咱随时奉陪。退可守,如果在线教育这套烧钱逻辑跑不通,那么立马鸣金收兵,账上有粮,心里不慌。

 

要知道,没有在线教育的这波风口,好未来想要融48亿美金基本不可能,即使强行做到,也要付出数倍的股权及心力。

 

向来克制的张邦鑫老师,这一回用鸡贼二字形容,充满了浓浓的赞誉感,不得不感慨,姜啊还是老的辣。叱咤教育圈20多年,与俞老师斗,与陈老师斗,什么大风大浪没有见识过,后生后辈们激情澎湃讲概念的时候,就已经看透了资本游戏的本质。

 

这一波草船借箭,让好未来10年之内不慌粮草,邦鑫老师终于忍不住内心的窃喜,开始在自己喜欢的公开场合露面。

 

2021年4月16日,好未来与北大成立“学习科学联合实验室”,小脸上洋溢着灿烂笑容,这回真的像个80后了。

 

早称王,广积粮,高筑墙,等你们自然黄。

 

俞敏洪做梦都能笑醒,5年没推进的数字化1年搞定!

 

这条基本思路,桃李财经在《浓眉大眼的新东方,你也善变了》一文中有提过。

 

一波长达一年多的疫情,彻底催化了新东方OMO战略加速推进。在俞敏洪看来,大概要提前了3-5年。

 

俞敏洪表示,经过这次疫情,重新回到线下的学生和家长都已经熟悉了在线学习的方式方法,老师也适应了在线授课,新东方正在计划主动把系统转变为线上线下完全融合的教学和产品系统,最后形成线上线下的无缝对接。

 

新东方重仓OMO模式,分成两步走策略:先是将教学场景放在线下,通过在线布置和批改课程作业的方式来实现OMO;再将地面课程的一部分搬到线上,把在线授课、地面授课以及课前预习、课后作业等环节连接到一起,实现线上线下无障碍打通。

 

俞敏洪本人曾预计,3年以后新东方线下与线上的业务体量比例可能会是3:1左右。

 

对于新东方来说,OMO 最直接的效果就是实现降本增效。第一,改善运营,提高获客及转化效率。第二,升级管理,提高机构管理效率。将传统线下管理变为信息化管理。第三,提升服务,提高个性化服务效果。

 

从披露信息来看,至少未来两个财年中,新东方都保持80%线下+20%线上的形式。对此资本市场也给予了回应,2020财年新东方营收为35.8亿美元,同比增长15.6%。

 

回到新东方业务的基本面。

 

在线教育对新东方整体的冲击,可以说微乎其微,应该是受冲击最小的古典巨头。

 

新东方的各大地面校区强大的生源能力、教学实力、超赞口碑,以及稳定地不能再稳定的毛利率,都让新东方并未对纯烧钱模式有任何涟漪。

 

回到俞老师本人心性。

 

财富对俞老师早就只是一个数字,新东方上下也很少关心所谓的市值和竞争,几乎全公司都在喊着“新东方老师好”的口号,对教育的理解,对教育本质的追寻,无出新东方之右者。

 

俞老师牵肠挂肚心心念念的只有三个课题:第一,新东方的IT化数字化;第二,做普惠教育,把教育和公益更好的结合起来;第三,刺痛的接班人话题。

 

至少前两条,都被激活满足的很好。

 

新东方正逐步把系统转变为线上线下完全融合的教学和产品系统,然后用来继续做公益。

 

2020年10月,新东方与甘肃省教育厅签订公益支教协议,将为甘肃部分地区和学校提供双师直播课、基层教师培训、图书捐赠等多方面的支持,这种化零为整的教育公益整体解决方案的模式是整个教育公益界非常重要的一个突破。

 

对于新东方来说,谈不上大起大落,也谈不上渔翁得利,没有像好未来那样融几十个亿落袋为安,也不忍受额外的非分之想带来的煎熬。

 

新东方还是稳坐江湖第二把交椅,俞敏洪还是那个教育圈第一网红。

 

人生境界不同,对下一个人生境界的追求亦不同,莫强求。

 

03

桃李财经的思考

未来面前,百亿美金也是初学者

 

1998年11月,亚洲金融危机后,教育部本着“拉动内需、刺激消费、促进经济增长、缓解就业压力”目标的进行了教育改革。

 

1999年,全国高校扩招正式启动,1999-2003的五年间,全国高考招生1351万人,超过了过去20年的总和。

 

随之,培训机构在2000年以后如雨后春笋被催生出来。以上所有机构,包括跟谁学、网易有道、VIPKID、一起教育、海亮教育、精锐教育、51Talk、瑞思教育等等,都是那次教育改革的受益者。

 

如今,教育改革的呼声再次强烈。

 

从家长层面,有数据显示,77%的家长认为,以成绩为考核标准,难以培养孩子的主动学习和创新能力。

 

从社会层面,跳出考试这个指挥棒的呼声十分强烈,大众希望通过教育提高学生的能力素质,增强青少年的兴趣爱好。

 

从国家层面,回归教育本质一再被提起,一次次探索教育的到底是什么?

 

所有的思考、疑问、呼声似乎都在指出当下教育产业的不足,担心教育企业太功利、太过火,将行业引入歧途。

 

教育部门也开始加强对产业的约束,2019年7月,教育部会同多个部门联合发布了《关于规范校外线上培训的实施意见》,这是国家层面上颁布的首个线上培训规范文件,标志K12培训监管从线下延伸至线上。

 

2021年开年,中纪委网站就发表文章《观察|资本漩涡下的在线教育》,对刚刚获得数亿元融资的猿辅导、作业帮点名批评,担心资本入局后搅乱在线教育。

 

一面是产业兴旺,一面是全社会的忧心忡忡。

 

桃李财经看来,究其根本还是现在的教育离培训太近,离教育太远,甚至根本没有摸到教育的边儿,更遑论登堂入室。

 

改革将会带来新的生存挑战。当下的行业格局自然要重新洗牌。在过去以创新脱颖而出的企业也会在竞争中被淘汰。

 

而传统的企业,也会因不断地催生新模式而重新焕发生机,当然也一定会有与过往模式截然不同的企业展露头角,共同逐鹿。

 

所以在未来面前,做到了百亿美金级的企业也是初创者,也是初学者。

 

部分参考资料:

《好未来再融资33亿美元,在线教育正书写历史》多知网

《猿辅导与作业帮,谁是下一个千亿美金公司?》网易科猿辅导作业帮必有一伤,好未来新东方渔翁得利!

转自:https://mp.weixin.qq.com/s/OXCEdSh4mYzQ1TcCIDKDTQ

win10 的Microsoft Store应用商店打不开,显示错误代码0x80131500解决方法

最近想试试win10自带的 linux , 说是要打开应用商店下载,结果一打开,显示无法加载,以为是网络不畅的问题。过了一天,又试一次,还是不行。仔细看下面有个错误代码0x80131500。

win-R输入inetcpl.cpl打开internet属性设置,点高级,选中使用TLS1.2, 就可以了