Arduino

Arduino

Uno / Nano / 101 ……
开源、便宜、无尽创想
ESP物联网

ESP物联网

掌控板
ESP8266 / ESP32
App Inventor

App Inventor

手机平板应用开发
……
卡片电脑

卡片电脑

树莓派
虚谷号
3D打印

3D打印

三维立体绘图
打印机操作及技巧
激光切割

激光切割

2D矢量绘图
切割机操作及技巧
大开眼界

大开眼界

围观神级作品
学习软硬兼施
源创分享

源创分享

自撰美文
经验分享

與python爬蟲的切磋——爬取bilibili某用戶的粉絲數

Rokey 发表了文章 • 0 个评论 • 32 次浏览 • 2020-02-12 22:59 • 来自相关话题

by rocky 那個男孩不想擁有自己的爬蟲~ ...查看全部

by rocky



那個男孩不想擁有自己的爬蟲~



在我歷盡千辛萬苦尋找資料后,終於匯總出了這篇文章【笑cry】



Let's dance!



首先,我們要加載相應的第三方庫:




requests


我用的編譯器是pycharm



所以加載第三方庫就比較簡單了



【絕對不是因爲我不會在vscode裏面導入】



源碼是在av84633631的基礎上做修改而成。



 




import requests
import time
import os
import re

def dailichi():
import random
daili = [
'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36',
'Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; WOW64; Trident/4.0; SLCC1)',
'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; WOW64; Trident/4.0; SLCC1)',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1',
'Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1',
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71',
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; QQBrowser/7.0.3698.400)',
'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)',
'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'
]
dai = random.choice(daili)
# print(dai)
head = {
'User-Agent': '%s' % dai
}
return head


def get_time():
import datetime
# now_time = str(datetime.datetime.now())[:10]
now_time = str(datetime.datetime.now())
return now_time


def main(id):
url = f'https://api.bilibili.com/x/relation/stat?vmid={id}'
timee = get_time()
response = requests.get(url=url, headers=dailichi())
pep = response.json()['data']['follower']
return str(timee) + ":" + str(pep)


def get_name(id):
url = f'https://space.bilibili.com/{id}'
response = requests.get(url=url, headers=dailichi())
txt = response.text
name = re.findall('<title>(.*?)的个人空间 - 哔哩哔哩', txt, re.S)[0]
return name


if __name__ == "__main__":
print('輸入你的用戶UID')
id = input()
name = get_name(id)
# print(name)
while True:
# os.system('cls')
print('\r' + str(name) + '----' + main(id))
time.sleep(1)

b = tk.Button(window, text='確定', font=('Arial', 12), width=10, height=1, command=hit_me)
b.pack()


 



效果如下



 【圖放不上,文字演示】



輸入你的用戶UID  【運行前,獲取所需用戶的uid】

390686701       【鍵入uid(快去關注)】

番茄酱原创空间----2020-02-12 22:50:19.493535:33 【輸出結果】

番茄酱原创空间----2020-02-12 22:50:20.816755:33  藍色是時間

番茄酱原创空间----2020-02-12 22:50:22.049932:33  紅色是粉絲數

番茄酱原创空间----2020-02-12 22:50:23.295451:33  綠色是用戶名

番茄酱原创空间----2020-02-12 22:50:24.570366:33  每隔約一秒輸出一個結果

番茄酱原创空间----2020-02-12 22:50:25.785704:33

番茄酱原创空间----2020-02-12 22:50:26.973337:33

番茄酱原创空间----2020-02-12 22:50:28.215945:33

番茄酱原创空间----2020-02-12 22:50:29.389261:33

番茄酱原创空间----2020-02-12 22:50:30.582280:33

番茄酱原创空间----2020-02-12 22:50:31.756264:33



還可以知道別的一些大up豬的粉絲



THE END



點贊+評論=創作動力!!!!!


【大项目】爆肝2个月的基于python的软体

Rokey 发表了文章 • 0 个评论 • 38 次浏览 • 2020-01-11 20:49 • 来自相关话题

好久没来啦~ 在省实的创客社里的一年就拿了两份区级‘大奖’,开心 好!话不多说,直接进入正题: & ...查看全部

好久没来啦~



在省实的创客社里的一年就拿了两份区级‘大奖’,开心



好!话不多说,直接进入正题:



    tkinter库是一个python的用于搭建图形化界面的功能强悍的库。一次在创客社里的脑洞大开,就开始对这叫《线程毁灭器》的小作品。源码如下





完整版私信我



运行后效果如下(运用了按钮,文本框等)



将密码输入后呈"*"号



 



 



若密码正确则弹出: 



反之,则:



 



点击确定钮: 



选择“继续”或“放弃”



 



接着做个打包~即成: 



再更改图标



1\创建快捷方式



2\打开属性,更改!



3\打成压缩包



 



end 


Python编程参考手册

帅危 发表了文章 • 2 个评论 • 102 次浏览 • 2019-07-05 13:53 • 来自相关话题

Python编程参考手册 在这里我只会总结那些奇怪的语法 -------------------这是一条华丽的分割线--------------------- #!/usr/bin/env ...查看全部
Python编程参考手册

在这里我只会总结那些奇怪的语法

-------------------这是一条华丽的分割线---------------------

#!/usr/bin/env python3  告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释

# -*- coding: utf-8 -*-告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码

字符串和编码:

    chr(字符)-----Ascall码

    ord(Ascall码)-----字符

    len(集合或字符串)-----长度

    format()-----格式化字符串

各种有序列表:

    a[奇怪的东西]----list-----不定集合

    a(奇怪的东西)----tuple-----稳定集合(元组)

    上面这两个是定义集合!

    append(元素)-----将某个元素添加到末尾

    insert(数字,元素)-----将某个元素添加到集合某个位上

    pop()-----删除集合末尾元素

    pop(数字)-----删除集合某位上元素

条件判断:

    if 条件判断语句:

    elif:否则如果

    else:否则

    

    switch:

    case:

    case:

    default:

循环:

    range(数字)-----从0循环到(数字-1)

    break-----结束当前循环

    continue-----提前结束本轮循环,并直接开始下一轮循环

--------------------------------------未完待续----------------------------------------

python------之for循环

XUNUO678 发表了文章 • 0 个评论 • 96 次浏览 • 2019-02-06 18:39 • 来自相关话题

  在很多编程软件中,一定会有循环这些语句,只不过表达的方式可能不同,比如python,它里面就提供了两种供我们使用的循环语句------for循环和while循环。那循环有什么用呢?如果你要做一个叠加,要1一直加到100,你总不能写成这样吧:s=1+2 ...查看全部

  在很多编程软件中,一定会有循环这些语句,只不过表达的方式可能不同,比如python,它里面就提供了两种供我们使用的循环语句------for循环和while循环。那循环有什么用呢?如果你要做一个叠加,要1一直加到100,你总不能写成这样吧:s=1+2+3+4······+100?这肯定不行,就算可以,你也不能一直这样吧,所以就提供了循环这一个语句模块,for循环的格式是这样的:

for 变量 in 列表或元组:

执行的命令 那这一些循环都能将list列表和tuple元组的每一个元素打印出来,程序如下:

classmates=['a','b','c']#list列表

for x in classmates:#将classmates列表里的abc分别代入到变量x里。

print(x)#再用print()指令 将classmates列表里的各个元素都打印出来。 如果我们要做从1加到100的运算,我们可以用range()来生成一个整数列表,可是range()只能生成小于这一个填进去的数的所有数。也就是说,我们如果要用range()模块进行生成整数序列,一定要填末尾元素+1的那一个数。再用list()就能将它变成list列表。从而达到直接生成列表的作用。