BiuBiu

Do something amazing.


  • 首页

  • 标签

  • 分类

  • 归档

python爬虫实战:利用scrapy,短短50行代码下载整站短视频

发表于 2018-12-14 | 分类于 python

近日,有朋友向我求助一件小事儿,他在一个短视频app上看到一个好玩儿的段子,想下载下来,可死活找不到下载的方法。这忙我得帮,少不得就抓包分析了一下这个app,找到了视频的下载链接,帮他解决了这个小问题。

因为这个事儿,勾起了我另一个念头,这不最近一直想把python爬虫方面的知识梳理梳理吗,干脆借机行事,正凑着短视频火热的势头,做一个短视频的爬虫好了,中间用到什么知识就理一理。

我喜欢把事情说得很直白,如果恰好有初入门的朋友想了解爬虫的技术,可以将就看看,或许对你的认识会有提升。如果有高手路过,最好能指点一二,本人不胜感激。

阅读全文 »

asyncio异步IO--同步原语

发表于 2018-11-30 | 更新于 2018-12-14

asyncio同步原语与线程(threading)模块同步原语基本类似,但有两点重要区别:

  • asyncio同步原语非线程安全,因此不应被用作系统线程同步(可以使用threading代替);
  • asyncio同步原语不允许使用timeout参数;可以使用asyncio.wait_for()方法执行有超时设置的操作。
    阅读全文 »

关于异步并发的几点疑惑

发表于 2018-11-28 | 更新于 2018-12-14

一、某一Task在挂起时,被挂起的子任务是不是在新的线程或进程里继续执行,直到返回结果,通知主线程

这个问题迷惑了我很久,所以需要通过代码实验一下:

  • 编写一个协程,在协程中获取当前的线程和进程ID
  • 在另一个协程中调用上一个协程,并获取当前协程的线程ID和进程ID
  • 封装为Task,纳入事件循环中运行,查看主线程的线程ID和进程ID
    阅读全文 »

asyncio异步IO——Streams详解

发表于 2018-11-26 | 更新于 2018-11-27 | 分类于 Python

前言

本文翻译自python3.7官方文档——asyncio-stream,译者马鸣谦,邮箱 1612557569@qq.com。转载请注明出处。

数据流(Streams)

数据流(Streams)是用于处理网络连接的高阶异步/等待就绪(async/await-ready)原语,可以在不使用回调和底层传输协议的情况下发送和接收数据。

阅读全文 »

Pythony asyncio详解

发表于 2018-11-22 | 更新于 2018-12-14 | 分类于 Python

认识asyncio

asyncio是新晋的Python标准库,在Python3.4中被引入。它的主要作用是简化Python的并发程序编写,利用asyncio库,你可以使用简单的async/await语法进行并发代码编写。
asyncio是许多Python异步框架的基础,这些异步框架用于实现 高性能网络和Web服务、数据库连接库、任务分发队列 等功能。
asyncio并不万能,但能很好的解决 IO瓶颈 对代码性能的影响,十分适合 高阶(high-level)网络编程 。

阅读全文 »

asyncio异步IO--协程(Coroutine)与任务(Task)详解

发表于 2018-11-19 | 更新于 2018-11-26 | 分类于 Python

摘要:本文翻译自Coroutines and Tasks,主要介绍asyncio中用于处理协程和任务的方法和接口。在翻译过程中,译者在官方文档的基础上增加了部分样例代码和示意图表,以帮助读者对文档的理解。本文内容主要针对python3.7,在低版本的python中可能不适用,敬请留意。原创内容,如需转载请注明出处。
译者:马鸣谦(邮箱:553850687@qq.com)

协程

协程(coroutines)是通过async/await定义函数或方法,是使用asyncio进行异步编程的首选途径。如下,是一个协程的例子:

1
2
3
4
5
6
import asyncio

async def main():
print("hello")
await asyncio.sleep(1)
print("world")

阅读全文 »

为Atom安装流程图组件

发表于 2018-11-19 | 分类于 Atom

Atom是一款很便捷强大的Markdown编辑器,它的强大来源于大量的第三方packages,但是有些很常用的package在默认状态下是没有安装的,需要我们用到的时候自己安装。比如 Atom对流程图的支持就需要我们安装插件来实现。

阅读全文 »

Next主题字号

发表于 2018-11-16 | 分类于 Hexo

Next主题控制字体大小的文件是在主题文件夹中的 source\css_variables 目录下的 base.styl 文件。路径是:themes\next\source\css_variables\base.styl

1
2
3
4
5
6
7
// Font size
$font-size-base = 12px
$font-size-base = unit(hexo-config('font.global.size'), px) if hexo-config('font.global.size') is a 'unit'
$font-size-small = $font-size-base - 2px
$font-size-smaller = $font-size-base - 4px
$font-size-large = $font-size-base + 2px
$font-size-larger = $font-size-base + 4px

如何在Hexo中添加本地图片

发表于 2018-11-15 | 更新于 2018-11-16 | 分类于 Hexo

在写如何修改Hexo的主题时,需要插入一些本地的截图到文章中,在本地编辑文章的时候自然可以将本地图片的链接插入到文章中,但这就面临一个问题:本地的链接在文章发布之后必然失效,该怎么办?

按照经验,解决的办法自然是将图片上传到某个图片空间,然后将图片空间中图片的链接插入文章中。

这当然可以解决问题,但是未免太麻烦。

然而,虽然接触Hexo才短短两天时间,但是有一点我是肯定的:
如果一个产品不能足够简洁高效的解决一些我们应用中经常要遇到的问题的话,那么它一定不能流行起来。

Hexo无疑流行起来了,所以它一定有自己的解决之道。

事实的确如此。我毫不费力的便找到了Hexo添加本地图片,并同步发布到线上的解决方法。

阅读全文 »

如何修改Hexo的主题

发表于 2018-11-15 | 更新于 2018-11-22 | 分类于 Hexo

这是利用Hexo写博客以来的第一篇正儿八经的文章,就记一记眼下正在做的事情:给Hexo更换主题。

文章主要内容是讲述更换主题的操作步骤,从本文你可以了解到:

  • 如何获取一个Hexo的主题
  • 如何安装和配置主题
  • 如何设置菜单、分类、标签、关于我等内容
阅读全文 »

MingQian

10 日志
4 分类
13 标签
© 2018 MingQian
由 Hexo 强力驱动 v3.8.0
|
主题 – NexT.Mist v6.5.0