Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python玩转简书钻

Python玩转简书钻

作者头像
罗罗攀
发布于 2018-12-19 08:51:33
发布于 2018-12-19 08:51:33
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

前言

2018年11月15号,简书迎来大变革,取消了以往的积分制度,换为去中心化的简书钻,每日发放一万简书钻。首先,简书给出了获取钻石的途径:写文点赞,与以往的阅读,评论,点赞,关注,写作都能获取积分(不同操作获取的积分不同)不一样,现在的途径更加简单和方便。其次,也说明了获取钻石的多少取决于用户的投票(钻石越多投票权重越大)。 简书每天都会公布前一天的排名,通过编写代码,获取20181115到20181126的数据,并进行分析。

爬虫

爬虫分析

简书钻的排行采用了异步加载,我们通过找包来获取数据,这里分为文章排名和用户排名,我们单独编写代码和单独存储。

文章排名代码
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests
import json
import csv
import time

headers = {
    'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
}

def get_info(url):
    res = requests.get(url,headers=headers)
    # print(res.text)
    json_data = json.loads(res.text)
    notes = json_data['notes']
    for note in notes:
        title = note['title']
        author_nickname = note['author_nickname']
        author_fp = note['author_fp']
        voter_fp = note['voter_fp']
        fp = note['fp']
        print(title,author_nickname,author_fp,voter_fp,fp)
        writer.writerow([title,author_nickname,author_fp,voter_fp,fp])

if __name__ == '__main__':
    fp = open('article.csv','w+',encoding='utf-8')
    writer = csv.writer(fp)
    writer.writerow(['title','author_nickname','author_fp','voter_fp','fp'])
    urls = ['https://www.jianshu.com/asimov/fp_rankings/voter_notes?date={}'.format(i) for i in range(20181115,20181127)]
    for url in urls:
        get_info(url)
        time.sleep(1)
用户排名代码

这里除了获取排名外,还对用户是否为简书会员(这个在分析中解释)进行了判断。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests
import json
import csv
import time
from lxml import etree

headers = {
    'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'
}

def get_info(url):
    path = 'https://www.jianshu.com/u/'
    res = requests.get(url,headers=headers)
    # print(res.text)
    json_data = json.loads(res.text)
    users = json_data['users']
    for user in users:
        slug = user['slug']
        author_url = path + slug
        style = jug_vip(author_url)
        author_nickname = user['nickname']
        author_fp = user['author_fp']
        voter_fp = user['voter_fp']
        fp = user['fp']
        print(author_nickname,author_url,author_fp,voter_fp,fp,style)
        writer.writerow([author_nickname,author_url,author_fp,voter_fp,fp,style])

def jug_vip(url):
    res = requests.get(url, headers=headers)
    html = etree.HTML(res.text)
    infos = html.xpath('//ul[@class="list user-dynamic"]/li')
    str = ''
    for info in infos:
        jug = info.xpath('string(.)').strip()
        str = str + jug
    if str.find('简书尊享会员') != -1:
        return '简书尊享会员'
    elif str.find('简书会员') != -1:
        return '简书会员'
    else:
        return '非会员'

if __name__ == '__main__':
    fp = open('user.csv','w+',encoding='utf-8')
    writer = csv.writer(fp)
    writer.writerow(['author_nickname','author_url','author_fp','voter_fp','fp','style'])
    urls = ['https://www.jianshu.com/asimov/fp_rankings/voter_users?date={}'.format(i) for i in range(20181115,20181127)]
    for url in urls:
        get_info(url)
        time.sleep(1)

数据分析

文章TOP10

首先,我们看看获取简书钻最多的前10篇文章。

文章涉及的内容,大部分都是和简书钻的分享有关,因为简书钻是最近才开始运营的,跟着这个热点走,曝光率与投票也会相应的多一些。

文章词云

10篇文章可能看到的还是比较局限,我们看看到底哪些文章更容易上榜。我们采取制作词云的方式,看看哪些关键词是最多的。

通过关键词,我们发现,可以将关键词分为两类:

  1. 简书钻相关:
  • 比特币
  • Fountain(简书合作伙伴)
  • Poc
  • 社区等
  1. 干货相关
  • 文章
  • 笔记
  • 导图(这个是长期霸屏用户使用的title:思维导图实战派_汪志鹏) 初步我们可以分析出:我们结合热点以及自身的行业,是比较容易上榜的(没那么简单。。。)。
用户TOP10

如果只是知道文章title规律,我们这种普通人也是很难上榜的。接下来,我们再通过上榜的用户来分析,看看规律。首先是top10。

这些用户排行靠前,大家可以看看这些用户平时的一个分析作品,学习学习。

霸屏用户

我总共爬取了12天的数据,通过代码发现,很多用户12天都上榜了,这种霸屏用户真的是羡慕嫉妒恨。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'书院的夫子', 'linwood', '那個長江', '達士通人', '我是北崖君', '简书钻首席小管家', '宿醉弥生', '乐健君',
       '思维导图实战派_汪志鹏', 'altcoin', '淡月6688', '临湖风徐徐道来', '小尘2016', '我是四海szw',
       '中本葱老爷爷', 'weiblock', '蒋坤元', '且行且影', '荆白', '苍天鸭', '脸谱大叔', '肆月初陆',
       '币圈Tesla', '无戒', '段维Tina', '紫萤石', '陈天宇123', 'Jianan嘉楠', '春木sky', '梦之蓝色',
       '杀个程序猿祭天', '霖山', '雪球薅羊毛', 'Carykive', '木木大木木', '大琦有钻', '李砍柴', '杰夫1',
       '写手圈', '静夜思007'
简书会员or非会员

在前文说到过,获取的钻石很大情况下取决你先拥有的简书钻,简书尊享会员就会拥有很多的简书钻,这也就导致上榜人数中,简书会员的比重占了一大部分。

总结

  • 结合简书钻热点上榜高
  • 你难道不考虑下简书尊享会员么?
  • 自身的努力也很重要,坚持写作,分享干货,这就是简书。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.11.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python数据分析之猫眼电影TOP100
如果大家经常阅读Python爬虫相关的公众号,都会是以爬虫+数据分析的形式展现的,这样很有趣,图表也很不错,今天了,我就来分享上一次在培训中的一个作品:猫眼电影爬虫及分析。 通过猫眼电影TOP100榜的爬虫,然后进行可视化,让学员体会到,小数据爬虫也能玩出这样的花样来。
罗罗攀
2018/12/26
1.2K0
9.python3实用编程技巧进阶(四)
4.1.如何读写csv数据  爬取豆瓣top250书籍 import requests import json import csv from bs4 import BeautifulSoup books = [] def book_name(url): res = requests.get(url) html = res.text soup = BeautifulSoup(html, 'html.parser') items = soup.find(class_="gr
zhang_derek
2019/08/21
4360
9.python3实用编程技巧进阶(四)
一次爬虫实践记录
公司在2017年3月的时候开发过一个「数据中心」,是将有赞的用户和订单信息通过API拉取到自己开发的网站上,再结合我们自己和用户沟通的信息,组成一个简单的用户管理中心。数据中心虽然简单,但对我们意义非常大,它的出现标志着我们想要定位一个用户的时候告别了“办公室吼一吼”的纯人肉方法。
py3study
2020/01/03
6680
用Python看我的2018
2018余额已不到两天,2018初的flag完成了几个?今天我利用Python爬虫和数据分析技术,分析我的2018年文章分享情况。
罗罗攀
2019/01/03
4200
baidumap
import requests from lxml import etree import csv import json # address = '上海' # par = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'} # base = 'http://restapi.amap.com/v3/geocode/geo' # response = requests.get(base, par) # print(response.
天道Vax的时间宝藏
2021/08/11
2420
用Python分析许嵩的歌
是否还记得断桥残雪,一听就是一下午 是否还记得认错,上课前必点歌曲 是否还记得素颜,同桌那清秀的脸庞
罗罗攀
2019/07/10
9970
用Python分析许嵩的歌
微博(APP)榜单爬虫及数据可视化
首先对部分用户id进行可视化,字体大一点的是上榜2次的(这次统计中最多上榜的是2次)。
罗罗攀
2018/08/28
1K0
微博(APP)榜单爬虫及数据可视化
Python有趣|微博榜单爬虫,尽知天下事
大家对于网页的数据爬虫了解的已经很多了,这次爬取APP端的数据。之前我也讲解过APP爬虫,但是没有讲解过Fiddler的配置和使用。这次以微博榜单为案例,介绍APP爬虫流程和数据的可视化(数据为2019年2月28号采集)。整个项目流程如下图所示:
罗罗攀
2019/03/19
9400
Python有趣|微博榜单爬虫,尽知天下事
【玩转Python系列】【小白必看】使用Python爬取双色球历史数据并可视化分析
这部分代码导入了需要使用的库。requests库用于发送网络请求,lxml库用于解析HTML,csv库用于处理CSV文件,matplotlib.pyplot库用于绘制图表,matplotlib.font_manager.FontProperties库用于加载自定义字体。
全栈若城
2024/02/29
8030
【玩转Python系列】【小白必看】使用Python爬取双色球历史数据并可视化分析
python保存文件的几种方式「建议收藏」
当我们获取到一些数据时,例如使用爬虫将网上的数据抓取下来时,应该怎么把数据保存为不同格式的文件呢?下面会分别介绍用python保存为 txt、csv、excel甚至保存到mongodb数据库中文件的方法。
全栈程序员站长
2022/08/03
1.7K0
python保存文件的几种方式「建议收藏」
Python爬虫之阳光电影爬虫爬虫分析代码
爬虫分析 这里涉及跨页的爬取,需要理清爬虫的思路。 首先打开网站,需爬取前11个分类的电影数据(经典影片格式不一样,爬虫时过滤掉了)。 进入电影列表页后,正则爬取页数和电影的分类标签
罗罗攀
2018/07/03
5980
【爬虫】获取新郑机场出租车实时数据
八月十五的晚上,一个同学来找我要机场出租车的数据!Excuse me,我们不生产数据、只做数据的搬运工 。
壹言
2019/09/19
7.3K3
Python3爬虫实战(二):电子书标题、作者、简介
本文以'allitebooks'网站对象,实现电子书标题、作者、简介批量获取,并以json和csv文件形式存入本地。
用户5473628
2019/08/08
6270
4.python读写csv文件
import requests import json import csv from bs4 import BeautifulSoup books = [] def book_name(url): res = requests.get(url) html = res.text soup = BeautifulSoup(html, 'html.parser') items = soup.find(class_="grid-16-8 clearfix").find(cla
zhang_derek
2019/08/14
5090
京东文胸爬虫及数据分析爬虫代码数据分析
许久不来写文章了,最近夏令营搞的确实没时间。这次把上次直播讲的东西写成文字,带大家开波车。
罗罗攀
2018/08/28
8990
京东文胸爬虫及数据分析爬虫代码数据分析
Python爬虫入门教程 11-100 行行网电子书多线程爬取
最近想找几本电子书看看,就翻啊翻,然后呢,找到了一个 叫做 周读的网站 ,网站特别好,简单清爽,书籍很多,而且打开都是百度网盘可以直接下载,更新速度也还可以,于是乎,我给爬了。本篇文章学习即可,这么好的分享网站,尽量不要去爬,影响人家访问速度就不好了 http://www.ireadweek.com/ ,想要数据的,可以在我博客下面评论,我发给你,QQ,邮箱,啥的都可以。
梦想橡皮擦
2019/02/19
8123
Python爬虫入门教程 11-100 行行网电子书多线程爬取
python爬虫获取豆瓣图书Top250
在上一篇博客《python爬虫获取豆瓣电影TOP250》中,小菌为大家带来了如何将豆瓣电影Top250的数据存入MySQL数据库的方法。这次的分享,小菌决定再带着大家去研究如何爬取豆瓣图片的Top250信息,并将数据保存在csv文件中!
大数据梦想家
2021/01/22
1.3K0
python爬虫获取豆瓣图书Top250
调用高德POI数据,带你玩转长沙
说到长沙,大家第一想到的可能就是小吃,当然来长沙旅游,不光只是为了吃,这吃喝玩乐,咱都得来一套是吧。基于此,我调用了高德的API,来获取POI数据,带你玩转长沙。 首先,我们来看看POI的概念:POI(Point of Interest)简单的说就是兴趣点,在地理信息系统中,一个POI可以是一栋房子、一个商铺、一个邮筒、一个公交站等。 本教程包含内容:
罗罗攀
2018/08/10
2.1K1
调用高德POI数据,带你玩转长沙
【爬虫】简书七天文章一览
from lxml import etree import requests import pymongo import re import json from multiprocessing import Pool client = pymongo.MongoClient('localhost', 27017) mydb = client['mydb'] sevenday = mydb['sevenday'] header = { 'User-Agent':'Mozilla/5.0 (Wind
天道Vax的时间宝藏
2021/08/11
4440
Python关键词数据采集案例,5118查询网站关键词数据采集
对于seoer而言,关注网站的关键词数据是非常重要的,关键词排名情况,流量来源,以及同行的网站数据,那么借助于seo查询工具也是非常有必要的,比较知名的就有爱站站长工具,站长工具以及5118。
二爷
2020/07/22
2K0
Python关键词数据采集案例,5118查询网站关键词数据采集
相关推荐
Python数据分析之猫眼电影TOP100
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验