python如何赚钱? python爬虫如何进阶? python就业? 如何快速入门python?



最近微信后台有不少问题,前几天我也在微信群中给大家说在学习 Python 过程中遇到什么问题可以私信我,我会找个时间给大家做一个统一的回复。当然了,别给我甩一堆报错什么的,我哪有那个时间给你 debug 啊。


在这些问题中,我把一些问的比较多的,大家比较关心的问题答复一下吧,希望对你有帮助。



1、如何快速入门 Python ?


我之前给大家说过,速成一门技能是不可能的,你需要花很多时间才能真正的掌握一门技能,但是快速入门是有可能的,而且也是必要的,你需要掌握最少且最必要的知识点,先进门再说。


其实编程,都有最基础的知识点,而且这些知识点都是共通的,什么意思?就是如果知道了这些知识点,那么你学习其他编程语言的时候,会很快就上手。这是因为编程有最少且最必要的知识。


回到 Python 来, Python 的最少且最必要的知识点是什么呢?其实我之前分享过的 今日份的 Python 基础清单 这里面就是 Python 的最少且最必要的知识点:





你一开始应该先去学习这些内容,而不是一开始就学什么计算机原理,计算机网络,数据结构与算法,这些重要吗?重要!但不是你现在该干的事情,你需要先入门,先进来,先看看在 Python 的世界里,可以做什么事情,什么是你的兴趣,接着再深入研究。



2、Python目前的就业领域有哪些 ?


据我最近的观察,Python 目前的就业领域主要有这么几个:


2.1、 web开发


对于一些网站的开发,诸如后台管理系统,或者一些微服务,写一些接口,都可以使用 Python 实现。


2.2、 数据采集(爬虫)


这个可能是你们比较关心的,爬虫相关问题后面还会多说一些,网络上有大量的数据,可是数据量太多太杂,如何获取到想要的数据,就需要数据采集了,而 Python 是最适合做爬虫的语言,你懂的。


2.3、 数据分析


主要是对数据进行分析、预判,从而做出选择或者对过去的复盘, Python 拥有非常成熟的数据分析库,有些人会有疑问,爬虫不也得数据分析么?咋就分开来说?其实爬虫只是数据分析的一种手段,数据来源不一定是通过爬虫获得,其它的数据也可以做分析。


2.4、 人工智能/机器学习


这个相对难度高一些,需要掌握一定的算法,对识别技术,自动化技术,深度学习,自然语言处理等方面都得有一定的研究,当然,工资相对较高。



3、Python爬虫入门应该学习什么?


应该对计算机网络有一定的了解,能知道 HTTP 请求的一些规则,知道什么是 Header ,cookies,知道 HTTP 一些状态码都代表啥意思。


会使用抓包工具,对一些请求的规则进行分析,知道通过什么样的请求方式才能获取到你要的数据。然后学习使用 requests 库进行网络请求。


接着学习一些 Python 的解析库,你得到的数据各式各样,有 json 的,有 xml 的, 有 html 的,你要会(正则)解析获取关键的数据。常见的库有 xpath、pyquery、beautifulSoup、 json、 xml.sax、 re 等。


接着就是数据存储,对一些常用的 sql 语句要会,常用的数据库有 MySQL、MongoDB。


一句话,把我写的 Python 爬虫教程看了并自己实现好就是了。


4、Python爬虫如何进阶?


假设你已经对一些普通的网站的爬取游刃有余了,那么接下来就可以学学在手机端上爬取数据,如 Fiddler 抓取 APP 的一些数据请求, appnium 的使用。


接着学习如何对于一些加密的数据进行破解,例如一些网站上的关键数据使用 css 的属性进行加密,使得你在 html 里面拿不到关键数据。那么你就需要学会 css 相关的内容,研究网站对 css 的设置,例如偏移量,然后再根据规则使用 Python 重新合成。


还有一些动态的网页使用 JS 进行渲染,除了用性能较低的 selenium 之外,你还要会知道如何去破解 JS 的加密,那么你就得知道如何抓包,如何使用浏览器的开发者工具,怎么去设置断点,从而找到 JS 的加密函数,再使用 python 的 js 库来执行得到原始的数据。


当然,还有一些更有难度的,比如 apk 的反编译,如何在 apk 的反编译中获取到数据等。


再进一步,要知道如何进行异步爬取数据了,使用多线程多进程来提高爬取效率以及分布式爬虫的部署相关操作。


接着,就要考虑如何 url 去重爬取,如何做到断点续爬,比如说你的爬虫爬着爬着突然就傻逼了,或者断网了,这个时候不可能说从头开始爬起吧。之前也有人问如何做断点续爬,这里就提供一个思路吧,你可以使用 redis 构建一个 urlpool ,在这个 pool 里面对请求的 url 做标识,可以使用消息队列,在爬取成功的时候通知 urlpool 里的 url 标识状态,在请求 url 之前通过 urlpool 判断这个 url 是否爬取了。


再来就是爬虫框架了,比如现在的 scrapy 框架,值得好好研究一波的。


最后说一句,还是多实践,毕竟实践出真知,多在实践过程中总结问题和经验,也是进阶过程中所需的道路。



5、Python爬虫学到什么程度可以找到工作?


满足以上 3 、4 点就很大机会可以找到工作了,当然,不同公司所需不同,有些公司对于初级爬虫工程师的要求也没那么高,只要你懂一些爬虫库的操作,能爬到数据,之前有一定的爬虫项目实战经验就可以了。所以别太担心,盘它就完事了。



6、什么样的数据不要去爬取?


6.1、隐私的数据,比如某某网站的一些个人隐私用户信息数据。


6.2、需要付费的数据,比如知识星球,得到这些付费平台的数据。


6.3、非公开的数据,别人系统里面自己的数据,并没有公开在互联网上。


6.4、网站明确声明不能爬取的数据。



7、如何自学高效?


之前说过一些:

如何自学 Python 高效一些



8、如何通过 python 赚钱?


8.1、接单,爬虫的单子相对其他的一些 web 开发会爽一些,没有那么繁琐,爬完数据就能换钱。具体费用看工作量而定,印象中我接的爬虫单子也就两三单,主要没什么时间去搞,所以没赚什么钱。


8.2、做网站,根据你自己的兴趣或者优势去做一个网站,但这个不会及时满足,也就是说你得花比较长的时间去经营,等你的网站有一定的流量之后,可以嵌入广告联盟的广告,从而赚取广告费。


8.3、开发有用的工具,如果你能找到别人的一些痛点,开发出满足用户的工具,从而让用户购买使用。这种方式没有边际成本,只要你开发出来了,多一个用户就是多一份钱,躺着赚。


8.4、做公众号,像帅b我一样,写写 python 的教程,当然你得要坚持,并且一开始要忍受很久写了没什么人看的痛,还要学会更多的东西,当然我的骚操作,你是学不来的哈哈,我要说的是比如产品、运营、写作…这些。


当你公众号有了一定的阅读量之后就可以接广告赚点小钱了。当然了,文章底部的广告被点击也可以赚到钱,赞赏也可以,但是这两个真的赚不到什么钱的,赞赏更多的对作者的一种认可支持,底部广告点一下也就几毛钱到 1 块钱左右。


9、帅b老仙,法力无边?


这是 b 友给我起的,你觉得我有法力,那就是有法力哈。好了,以上就是我最近被频繁问到的一些问题以及我的答复,希望对你有帮助吧,觉得不错的话点个在看,以后有机会再给大家分享一些经验,那么我们下回见咯,peace


扫一扫

学习 Python 没烦恼




00 后的互联网潮流用语了解一下



今天周末

给大家说点轻松的


是这样的

小帅b在网上看一些视频的时候



偶然看到

诸如 xswl 这样的弹幕

咱也不懂是啥意思






可气的是

看到一些 00 后

用几个字母在评论一些帖子的时候

我也是处于懵逼状态

懵逼久了我就不爽





妈的,我真的老了吗?

忍不了


然后就发条 pyq 问问

没想到一下子让我学到了不少哈哈


在这里给大家科普一下吧

假装自己是 00 后



1、xswl


就是 「笑死我了」 的意思

知道真相的我真的是 xswl..




2、dbq


就是 「对不起 的意思

这道歉也忒不真诚了吧




3、pyq


就是「朋友圈的意思

真他妈会简写。。



4、zqsg


就是「真情实感」的意思

意思是走心了,认真了

比如你要夸小帅b就可以说

小帅b,这次zqsg




5、dyf


就是「队友粉」的意思

这个是用在粉丝之间的话语

比如蔡徐坤和吴亦凡是团队中的成员

那么他们的粉丝之间就是 dyf





6、bp


就是「白嫖」的意思

比如你看某人的直播不刷礼物

就静静的看着

就是白嫖


你看我的文章

又不分享又不点赞的

也算是 bp





7、cqy


就是「处 q 友」的意思

指的是那种可以互相在 qq 点赞的

比如我们以前在玩 qq 空间的那种

别跑堂哦~




8、gkd


就是「搞快点」的意思

贴吧上有老哥说要发什么什么资源

底下就会评论 gkd

就是让他快点发




9、nmsl



这个一语双关

一种是脏话来的

指的是「尼玛死了

另一种是






10、awsl


就是「啊!我死了」的意思

一般指的是自己遇到一些

让自己感到兴奋的人或事


比如:


哇~小帅b~~awsl!!




好了

以上


我们总是在抱怨父母

那一代不懂我们


殊不知

当我们老了的时候

我们也就那样


下回见

peace




高考要来了,扒一扒历年高考录取分数来压压惊


一年一度的高考

就要来啦





虽然对于小帅b来说

高考是挺久远的事情了



但是

高三的那段日子

还是让小帅b有点感触




那个时候的我们

可谓

上知天文下知地理



而现在

感觉越来越弱鸡


比如





这样的化学题你做得出来吗





反正我只能这道题里

找到一点那时的回忆





这次就来

扒一扒历年高考录取分数

说不定对之后的考生有点帮助



那么接下来就是

学习 python 的正确姿势

python爬取微信上的联系人然后做一顿分析之后,我的眼泪掉下来


今天

小帅b来跟你玩玩

爬取微信好友

然后做一顿分析


其实

关于微信好友的爬取分析

挺早之前小帅b就分享过类似的了


但是那会

帅b我更多的是装逼

有些细节没跟你好好说说

导致有些 b 友有点懵逼



那么到现在

我想是个不错的时机了

到什么阶段就干什么事情



而且

前两篇也是写到和微信相关的

所以索性就再写一篇吧



这次

应该能让你更加容易

明白其中的道理



废话不多说

接下来就是


学习 python 的正确姿势

python爬取你喜欢的公众号的所有原创文章,然后搞成PDF慢慢看


我知道你有时候会遇到了

一个相见恨晚的公众号

比如小帅b的公众号哈哈


然后想去看看

这个公众号的历史文章


希望从第一篇开始看起

可是当你去微信里面查看的时候


会很蛋疼

因为

微信没有给文章一个时间排序





那么这时候你只能

从最近更新的文章开始

一直滑呀滑~滑呀滑~





好不容易看到了作者的第一篇文章了

结果一不小心

按了一下返回键


WTF!!!





只能重新滑呀滑~滑呀滑~

滑到外婆桥

桥里有个洞

洞里有个黑屁股





话说

能不能把公众号的文章全都爬取下来

然后制作成 PDF


这样

妈妈就再也不用担心

我无法看到作者的所有干货了


也不再担心

万一作者的突然脑抽把号给删了

文章全都消失


那岂不泪流满面





好了

那么

接下来就是


学习 python 的正确姿势



这次我们通过 fiddler 来抓取

手机上的请求


然后再把公众号的历史文章爬取下来

最后制作成 pdf 文件


小帅b来画个图吧

具体就是这样





ok

有了思路之后


我们就开干

先从数据抓包开始


将手机连好同个局域网的 WIFI

然后打开 fiddler

以小帅b的公众号为例


在手机上刷一下

学习python的正确姿势

这个公众号的历史文章





往下多滑几下

然后来看看 fiddler 抓到了什么数据


可以发现就是这个接口一直在请求




来看看其中一个具体数据请求



可以发现

微信在获取公众号历史文章的时候


有这么些参数是要携带的

小帅b看了下

比较重要的两个参数是

offsetis_ok

应该是用来加载更多文章的参数


其他的什么 token 参数

到时候我们直接复制到 python 中进行请求就好了


再来看看返回的数据长什么鸟样





返回了一个 json


这里有个 next_offset 字段

小帅b发现它就是用来下次请求的时候

用于 offset 这个字段的


can_msg_continue

就是用于下次请求的 is_ok 字段的





我们再来看看具体每次请求得到的

列表内容





数据很明显了

list 里面的每一个 item

都是小帅b发过的文章信息

标题、链接、作者、原文地址、封面图啥都有了


那如何区分文章是否原创的呢

小帅b公众号都是原创的文章


所以只能去抓一下其他公众号的文章

看了一会发现


copyright_stat = 11

就是原创





知道了请求规则

以及返回数据的格式


接下来就可以使用代码获取啦


先来把 header 和 cookies 定义一下

假装自己是在用手机请求数据




在请求的时候

需要携带参数

这里主要是控制一下 offset

用来加载更多数据






定义好了之后

就可以使用 requests 进行请求了



先来获取所有的原创文章

然后打印一下看看




主要就是将返回的数据

使用 json 进行解析


然后判断是否可以获取更多的数据

如果还有数据的话

我们就递归请求



ok

执行一波




公众号的所有原创文章

就被我们爬取下来啦




开心得像条狗



接下来

把文章转化为 pdf 文件


怎么弄

其实小帅b也不知道…



遇到事情不要慌

上 Google 搜索一下呗





装下b

用英文搜索


点进去第一个链接看看





woc!!


一行代码搞定??

赶紧安装试试看





安装完成之后

在代码使用一下


# 自己定义存储路径pdfkit.from_url(content_url, ‘/home/wistbean/wechat_article/‘+title+‘.pdf’)



执行





可以可以


帅b的所有原创文章

就被保存下来啦






ok

以上

本篇文章涉及的源代码已经上传

在公众号后台发送 公众号 获取


扫一扫

学习 Python 没烦恼



看了还想看

爸爸,他使坏,用动态的 Json 数据,我要怎么搞?

教你通过 Fiddler 进行手机抓包

python爬取 20w 表情包之后,从此你就成为了微信斗图届的高手



ps

一直写原创教程真 jb 累

希望你多多支持

这样我才有动力一直写…么么哒


peace



python爬取 20w 表情包之后,从此你就成为了微信斗图届的高手



常常有 b 友问我

“小帅b,你哪来那么多的表情包”





当然是爬取来的啊

不瞒你说

在我的电脑里面

除了一些老师的教程之外

还有满满当当的表情包





每一个表情包都是那么的

生动有趣

是它们拯救了我们人类的尴尬

是它们拯救了多少的直男

是它们…


好吧

编不下去了






答应你们

这次腾出点时间

就来说说

小帅b是怎么玩表情包的



如何实现的呢?

那么接下来就是

学习 python 的正确姿势



是这样的

有一次小帅b想要斗图

配图

就在网上搜索表情包


然后发现了一个表情巨多的网站

不小心动起了邪念

产生了兴趣



那就

把它们存下来吧


用 requests 请求了一下

发现这个网站没有做反爬


小帅b发现这里有 4k+ 的页面



简单的切换一下页面

可以发现

第一页的链接是这样的


https://fabiaoqing.com/biaoqing/lists/page/1.html


所以以此类推

构建一下所有url


_url = https://fabiaoqing.com/biaoqing/lists/page/{page}.html'urls = [_url.format(page=page) for page in range(1, 4328+1)


这样我们就可以得到所有表情包的链接了


我们来看一下页面里面的信息


在这里

我们只需要图片的地址和图片的名称即可


所以我们只要获取到每个页面的

所有 img 标签就可以了


可以使用 BeautifulSoup 根据类名获取


response = requests.get(url)soup = BeautifulSoup(response.content, ‘lxml’)img_list = soup.find_all(‘img’, class_=‘ui image lazy’)



拿到了页面里面的所有 img

那么就可以获取每个图片的地址和名称

从而下载到我们想要的位置


  for img in img_list:       image = img.get(‘data-original’)       title = img.get(‘title’)       # print(image)       with open(path + title + os.path.splitext(image)[-1], ‘wb’) as f:            img = requests.get(image).content            f.write(img)


至此

几行代码就搞定了


先来测试一下

下载一个页面的图片





可以发现

每张图片都获取到了

效果还行


不过

要下载那么多张表情包的话

这样写的代码有点慢了





还是开启多线程吧

对于这种 IO 操作

还是能加快不少下载时间的


 queue = Queue()    path = ‘/home/wistbean/biaoqingbao/‘
# 创建线程 for x in range(10): worker = DownloadBiaoqingbao(queue, path) worker.daemon = True worker.start()
# 加入队列 for url in urls: queue.put(url)
queue.join()



在这里创建了 DownloadBiaoqingbao 这个线程类

然后创建 10 个线程


把 url 添加到队列中

来运行一下





这时候文件夹就写入表情包啦





经过一段时间

小帅b的文件夹就存满了各种表情包了哈哈哈

谁敢跟我斗图

我就砸死他






不过呢

有个问题

文件夹里面的图片太多了


需要检索一下才行

比如我们要找到关于

小老弟

的表情包


那么我们可以使用

glob


import globfor name in glob.glob(‘/home/wistbean/biaoqingbao/小老弟.):    print(name)


通过 这个符号进行模糊匹配

运行一下可以得到所有含有“小老弟”的表情包




到这里

已经有了大量的表情包

也可以通过关键词检索到表情包了


那么如何进一步用到微信来呢

嘿嘿,我得意的笑



开下脑洞

我们使用微信的接口和 python 对接一下


比如

我发送给我的微信说

我要关于沙雕的表情包,发 6 张来


这个时候

python接收到指令

然后就去检索表情包

发送回我的微信



岂不美哉~



说干就干


可以使用 itchat 这个模块

使用网页版微信的方式登录


itchat.auto_login(hotReload=True)itchat.run()


运行这段代码可以得到二维码

扫一下就可以登录进去操作微信了


接着就可以根据小帅b发送过来的关键词

进行文件搜索


imgs = []
def searchImage(text): print(‘收到关键词: ‘, text) for name in glob.glob(‘/home/wistbean/biaoqingbao/+text+‘.jpg’): imgs.append(name)


然后就可以在回复微信的时候发送图片给自己了


在这里就给自己发前 6 张图片吧


@itchat.msg_register([PICTURE, TEXT])def text_reply(msg): searchImage(msg.text) for img in imgs[:6]: msg.user.send_image(img) time.sleep(0.3) print(‘开始发送表情:’, img) imgs.clear()


但这里有个问题

就是 itchat 在发送图片的时候

中文名的文件发了没有反应


后来小帅b发现是 requests 库的问题

修改它的 fields.py


    value = email.utils.encode_rfc2231(value, ‘utf-8’)    # value = ‘%s=%s’ % (name, value)    value = ‘%s=”%s”‘ % (name, value.encode(‘utf-8’))


也就是将

value = ‘%s=%s’ % (name, value)

改成

value = ‘%s=”%s”‘ % (name, value.encode(‘utf-8’))


ok


搞定

运行之后是这样的






ok

以上


当然还可以优化一下

比如每次加载更多同类型的表情包

将表情包发送给特定的人等等

自己去玩吧





本篇文章涉及到的源代码已上传

在公众号后台发送“表情包”即可获取


那么

我们下回见

peace


扫一扫

学习 Python 没烦恼



也许你想知道:

长江后浪推前浪,Requests 库把 urllib 库拍在沙滩上

有了 BeautifulSoup ,妈妈再也不用担心我的正则表达式了

就这么说吧,如果你不懂多线程和线程池,那就去河边摸鱼!



点个在看啊~~(破音)



title: 520了,如果你的另一半是个程序员,发这个给TA
toc: true
date:
thumbnail: https://fxxkpython.com/images/shuaib1.jpg
tags:
- python
- python爬虫
- Mysql
- pymysql
- python爬虫实战
- python爬虫系列教程
- python 爬虫入门教程
categories: python爬虫





马上 520 啦

小帅b祝有情人总成眷属

和我一样是单身狗的

那就继续单着吧..




接下来

小帅b传授你一点程序员

才能懂的骚话情话


相信 TA 看到会开心的






1.我在全世界找一个和你一样的人:


SELECT
FROM World
WHERE “Someone”
LIKE “%YOU%”


目前返回的结果是:Query OK, Empty set (0.00 sec)


但我坚信,有一天,会返回一条记录,那条记录无法delete。



2.你愿意用这公式画个图么:


sqrt(9-x^2),(sqrt(cos(x))cos(200x)+sqrt(abs(x))-0.7)(4-x*x)^0.01, -sqrt(9-x^2)


如果你觉得难的话,可以 Google 一下,如果你懒得话,我帮你:




3.如果你可以被创建


如果你可以被new,那么把我的心交给你,让我好好爱你。


MyGirlFriend myGrilFriend = new GirlFriend();
myGrilFriend.letMeLoveYou(Heart myHeart);



4.待我代码编成,娶你为妻可好?


我在循环里,一直等着你 say Yes 的那天,然后我们一直在一起,因为我爱你并且你也爱我。

while(propose.times < 99) {
you.listen(phodal.ask(“will”)(“you”)(“marry”)(“me”));
you.reply.propose ();
}
you.propose(“Yes”);
var ever = I.love(you) && you.love(me);
for(ever){;;;};



5.Bug


如果你是个 Bug,我愿意花一辈子的时间 Debug,不过我不希望你被修复,因为你有 Bug 的样子,很美。



6.当所有事情都准备好了,我却突然不知道该干什么了


$(document).ready(function(){

});



7. 如果可以把你导入到我的人生里


import You;

class MyLife(){

};


那么我的人生,也许有更多的乐趣。



8.假作真时真亦假,无为有处有还无。


if(FALSE == true) TRUE = false; 
if(NULL == exist) exist = NULL;



9.帅b老仙,法力无边~



peace


python爬虫30 | scrapy后续,把「糗事百科」的段子爬下来然后存到数据库中



上回我们说到

兄dei,进来装逼不?


今天


小帅b在付费社区里面

学编程不就是为了赚钱?



最近有朋友在后台私信我说,小帅b啊,

python爬虫29 | 使用scrapy爬取糗事百科的例子,告诉你它有多厉害!


是时候

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×