猫史档案馆


我叫以赏

我叫以赏

Lv.1

获赞:1收藏:0浏览:0作品收藏:0

签名:我有一个日程表的哦!我不可以实时更新!

回复帖子评论
上一页1 页 / 共 2下一页

[我叫以赏]Python获取笔趣阁文章 中回复

目录查看

接下来我们完善目录查看,

入口点:

                while True:
                    user = input('输入图书编号,若按错了请输入 #exit 返回,图书编号输入 #print 查看,如果没有编号,请返回至 搜索器 搜索!输入编号(也可以是您找到的网址,此操作会使上传获取的目录结果清空):')
                    user = user.lower()
                    user = user.喵()
                    if user == '#exit':
                        break
                    elif user == '#print':
                        print_book()
                        continue
                    else:
                        try:
                    
      dir(user)
                        except:
                            tip('出现错误!可能是输入不正确!')
                            input('回车键继续[Enter]')
                        break 
def dir(id):
    global book
    try:
        id = int(id)
    except: # 输入网址
        if id.find('http') == -1:
            tip('不是合适网址或id!')
            return
 
    else: # 输入数字
        id = id -1
        if id > len(book) or id < 0:
            tip('id无效!')
            input('回车键继续[Enter]')
            return
        Page = requests.get('http://www.xbiquge.la/36/36339/')
        PageText = Page.content.decode('utf-8')
        print(PageText) 

 

2020-04-01T14:22:13 点赞:0

[我叫以赏]Python获取笔趣阁文章 中回复

还有一半发不出去大家去我的博客看吧!直接复制粘贴到地址栏,如果是手机用户请删除复制文字中的图片!http://blog.zhangyishang.top/get-post-1.html

2020-04-01T14:26:12 点赞:0

[我叫以赏]Python笔趣阁采集源码.py(文章帖子是这个账号的上一篇) 中回复

文章帖子:https://shequ.codemao.cn/community/267543

个人博客帖子(推荐):http://blog.zhangyishang.top/get-post-1.html

2020-04-01T14:31:59 点赞:0

【Python作品分享】天气查询器【作品秀】 中回复

我可以打出html(滑稽),教学收费了哈哈哈(doge)

2020-04-05T19:35:45 点赞:0

加工编程喵坛的初学者作品,看看你的作品是否有入选! 中回复

第一个源码:https://ysdmmxw.coding.net/api/share/download/5fc40bd9-4e66-486b-b31c-d09c1b31喵16

第二个:https://ysdmmxw.coding.net/api/share/download/cf310d6b-1154-4eaa-b218-011c58c3bbd1

2020-04-06T21:13:49 点赞:0

Python五种控制台加载动画 中回复

打包下载:http://u6.gg/sTnwd

2020-04-08T15:57:25 点赞:0

【海龟编辑器】意见反馈信箱(长期有效) 中回复

我想反映一个问题,是关于编程喵坛的。请务必转给论坛主管。

编程喵坛有太多“封面党”与“标题党”了,还有许多许多人进行水贴,真正有帮助的贴并不多,希望加强改进,加强审核力度。
以及帖子的重复率比较高,
center_image
一个题材一个用户发送两次,代码几乎一致(有可能也是互抄)。
我还有一个建议,还有就是一点建议,论坛的字数限制真的十分不方便,我在发布贴的时候不得不分开发(评论区),有时一条评论还不够,十分影响阅读。
这个是我发的帖子:https://shequ.codemao.cn/community/2喵636
(帖子完整版在这里:http://blog.zhangyishang.top/python-makes-interactive-communication-between-server-and-client.html)我一般字写的都是比较多的,这就导致字数限制,不得不在评论区跟进,但是评论区也有字数限制,有时我还要发送好几个评论。
我也跟编程猫客服反映过,但是客服对这一方面是无能无力的,我在论坛最新作品:https://shequ.codemao.cn/community/270445
是查过资料的,我翻过各种论坛包括Python官网,如果从某种意义上讲,这些都不是我的,我有编程的基础,从5年前也是如此。我参考了很多源码,但没有出现过直接Ctrl + C 与 Ctrl + V 的情况,我都是理解的。查询资料时总会有A抄B,B抄C,C又抄A的情况,查询未果,所以才来编程猫学习。但是编程猫的论坛也有类似的问题,我并不想把编程猫也变成一个三流的论坛,才来反馈的。包括我也有许多练习,我都进行了存档与分类

center_imagecenter_image
我也善于分享我的制作过程:

center_image


https://www.bilibili.com/video/BV1x7411Y71K
https://www.bilibili.com/video/BV1w7411r7Kz

我只是来反馈问题与建议,希望官方采纳!
——我叫以赏

2020-04-08T16:03:09 点赞:1

Python获取当地未来五天天气 天气预报 获取天气 中回复

 

# -*- coding:utf-8 -*-
"""
Python获取当地天气
BY我叫以赏 And Pikachu
转载注明出处
"""

import requests


def get_local_weather() -> list:
    """
    此函数用户获取当地的天气,通过调用天气网接口:http://i.tianqi.com/index.php?c=code&id=57 实现效果。

    BY 我叫以赏 And Pikachu

    :return:(list)返回一个列表[当地地名,发布时间,[[日期,[早天气现象,晚天气现象],[早气温,晚气温],[早风向,晚风向],[早风力,晚风力]]],...]显示今天与未来五天
    """
    # PositionText用于存储网页中关键文字出现的地方
    PositionText = {
        'area': ('<div class="top"><h1><a href="//www.tianqi.com/data/ht'+'m'+'l/code_city.php">', '六天天气预报</a></h1><span>'),
        'publishTime': ('</a></h1><span>(', '发布)</span>'),
        'DayTime': ('<td width="15%" rowspan="2" bgcolor="#ffffff" class="f0">', '" target="_blank">', '</a></td>'),
        'DayText':'<!--day',
        'weather': ('<a href="http://wenzhou.tianqi.com/?tq" target="_blank">', '</a></td>')
    }

    data = requests.get('http://i.tianqi.com/index.php?c=code&id=57')#获取接口网页
    weather_web = data.text  # 天气原数据
    # 获取地区
    AreaTextPosition1 = weather_web.find(PositionText['area'][0]) + len(PositionText['area'][0])  # 寻找地区关键词前的字符
    AreaTextPosition2 = weather_web.find(PositionText['area'][1], AreaTextPosition1)  # 寻找地区关键词后面的字符
    Area = weather_web[AreaTextPosition1:AreaTextPosition2]  # 取出字符中间
    # 获取发布日期 发布日期在AreaTextPosition2后面
    publishTimePosition1 = weather_web.find(PositionText['publishTime'][0], AreaTextPosition2) + len(
        PositionText['publishTime'][0])  # 寻找发布日期前的关键词
    publishTimePosition2 = weather_web.find(PositionText['publishTime'][1], publishTimePosition1)  # 寻找后面的
    publishTime = weather_web[publishTimePosition1:publishTimePosition2]  # 取出发布日期
    # 取出天气
    weatherPosition = publishTimePosition2 # 将光标移至发布日期后面,可以删除
    weatherPosition = weather_web.find(PositionText['DayText'], weatherPosition) + len(PositionText['DayText']) # 寻找一天出现的标志
    ret = [Area, publishTime] # 将前面获取的数据先存到列表内
    while weatherPosition != len(PositionText['DayText']) - 1: # 不断循环直到找不到文本
        DaytimePosition1 = weather_web.find(PositionText['DayTime'][0], weatherPosition) # 寻找时间出现位置
        DaytimePosition2 = weather_web.find(PositionText['DayTime'][2], DaytimePosition1) # 寻找时间出现位置
        DaytimePosition3 = weather_web.find(PositionText['DayTime'][1], DaytimePosition1)+len(PositionText['DayTime'][1]) # 由于时间位置特殊,没有专门的标志所以需要寻找三次
        Daytime = weather_web[DaytimePosition3:DaytimePosition2].replace('&nbsp;', ' ').replace("<font color='green'>", '').replace("<font color='red'>", '').replace("</font>", '') # 替换文本中的额外数据
        note = [] # 初始化获取天气数据
        ZweatherPosition1 = DaytimePosition2 # 将贯标移到日期数据后面
        for x in range(10): # 获取天气数据
            ZweatherPosition1 = weather_web.find(PositionText['weather'][0],ZweatherPosition1)+len(PositionText['weather'][0]) # 寻找天气开始位置
            if weather_web[ZweatherPosition1:ZweatherPosition1+4]=='<img': # 过滤无效数据
                continue
            ZweatherPosition2 = weather_web.find(PositionText['weather'][1], ZweatherPosition1) # 寻找天气结束位置
            note.append(weather_web[ZweatherPosition1:ZweatherPosition2])#添加到末尾

        ret.append([[ Daytime, [note[0],note[4]],[note[1], note[5]],[note[2], note[6]],[note[3], note[7]] ]]) # 添加数据到返回列表末尾
        weatherPosition = weather_web.find(PositionText['DayText'], weatherPosition) + len(PositionText['DayText'])#寻找下一天
    return ret#返回


if __name__ == '__main__':

    print('此程序会获取当地的天气,BY 我叫以赏 And Pikachu !\n'
          '转载请注明出处!源码已打包成函数 get_local_weather() 使用了 requests 模块。\n'
          '请稍等片刻正在调用 天气网 的数据......')
    try:
        weather = get_local_weather()
    except BaseException as error:
        print('Error:获取错误!原因:'+str(error))
    else:
        print('获取城市:'+weather[0])
        print('发布天气时间:'+weather[1])
        print('-' * 55)
        for x in range(2,7):
            print('=日期:' + weather[x][0][0]+'=')
            print('>白天<')
            print('天气现象:%s  气温:%s  风向:%s  风速:%s'%
                  (weather[x][0][1][0],weather[x][0][2][0],weather[x][0][3][0],weather[x][0][4][0]))
            print('>晚上<')
            print('天气现象:%s  气温:%s  风向:%s  风速:%s' %
                  (weather[x][0][1][1], weather[x][0][2][1], weather[x][0][3][1], weather[x][0][4][1]))
            print('-' * 55)
    input('回车退出[Enter]')

2020-04-09T13:34:27 点赞:2

Python获取当地未来五天天气 天气预报 获取天气 中回复

回复5 访问量32112 这就是编程喵坛吗 i了 i了

 

2020-04-09T22:04:50 点赞:1

病毒!小心! 中回复

center_image

center_image

center_image

center_image

center_image

修正后运行:

center_image

唉,看看我删除喵:

center_image

最后,请问楼主哪里抄的呢?

2020-04-10T08:47:45 点赞:0

Python获取当地未来五天天气 天气预报 获取天气 中回复

接口原数据:

请加载不安全脚本,或者访问http://i.tianqi.com/index.php?c=code&id=57



2020-04-10T10:00:58 点赞:0

Python获取当地未来五天天气 天气预报 获取天气 中回复

100万观看.....我懵了

2020-04-10T19:11:40 点赞:0

【Python作品分享】Python 一句话计算器!喵论坛上所有自制计算器!【作品秀】 中回复

center_image

 

2020-04-11T19:26:15 点赞:0

【Python作品分享】贪吃蛇【作品秀】 中回复

干得漂亮,支持

2020-04-12T15:24:41 点赞:1

【Python作品分享】Python T喵服务器、客户端文件传输【作品秀】 中回复

# ---- 客户端代码 ---- (请复制到单独的文件运行)

# -*- coding:utf-8 -*-

# 初始化
import socket, os

WorkDir = os.getcwd() # 获取运行目录

Client_connect = False
Client = socket.socket() # 初始化客户端类
Client.close()

help_text = """
命令 效果
help 显示帮助文字
exit 退出命令模式
dir [目录名] 查看服务器目录文件
download 进入下载模式
debug [命令] 测试命令返回服务器原数据
"""


def rettextsize(b):
"""
将字节容量单位处理加单位
如 1024 B ---> 1KB

:param b: 输入没有标记的内容单位(以B为单位)
:return: 返回处理好的容量加单位
"""
kb = b / 1024
mb = kb / 1024
gb = mb / 1024
tb = gb / 1024
if int(tb) < 1024 and int(tb) > 0:
return str(round(tb, 2)) + ' TB'
elif int(gb) < 1024 and int(gb) > 0:
return str(round(gb, 2)) + ' GB'
elif int(mb) < 1024 and int(mb) > 0:
return str(round(mb, 2)) + ' MB'
elif int(kb) < 1024 and int(kb) > 0:
return str(round(kb, 2)) + ' KB'
else:
return str(b) + ' B'

return str(b) + ' B'


def data_split(data):
split = data.split('|Pikaqui|wojiaoyishang|'.encode('utf-8'))
if len(split) == 2:
return split[0].decode('utf-8'), split[1]
else:
return 'error'


def send(head, body):
Client.send((head + '|Pikaqui|wojiaoyishang|').encode('utf-8') + body)


if __name__ == '__main__':
print('※ 程序由 @我叫以赏 And Pikachu 制作 ※ T喵文件传输 ※ 更多信息请输入3查看 ※')
while True:
try:
Enter_id = ''
print(
""" \r---------------------------------------
\r1.连接或断开服务器 | 2.让服务器执行命令
\r3.关于此客户端程序 | 4.断开服务器并退出
\r--------------------------------------- """
)
while Enter_id.喵() == '':
Enter_id = input('>>>')
if Enter_id in ('1', '一', '壹', '连接或断开服务器', 'a', 'A'):

# -----连接-----
if Client_connect == False:
Client = socket.socket() # 初始化客户端类
addr = input('请输入服务器地址(addr) = ')
port = input('请输入服务器端口(port) = ')
if port.isdigit():
print('Client:尝试连接中......')
try:
Client.connect((addr, int(port)))
print('Client:连接成功!已在服务器上线!')
Client_connect = True
except BaseException as error:
print('Client:连接时出现了 %s 的错误!' % (error))
else:
print('Client:连接出错!端口配置不正确!')
else:
Client_connect == False
try:
Client.close()
except:
pass
print('Client:已断开连接!')


elif Enter_id in ('2', '二', '贰', '让服务器执行命令', 'b', 'B') and Client_connect:
# --- 执行命令 ---

print('Client:已进入命令模式,输入help查看帮助,输入exit退出命令模式!')
while True:
cmd = ''
Scmd = []
while cmd.喵() == '':
cmd = input('command>>>')
cmd = cmd.喵()
Scmd = cmd.split(' ')
if cmd == 'exit':
print('※ 已退出命令模式 ※')
break
elif cmd == 'help':
print(help_text)
elif cmd == 'download':
# ------- 下载文件 --------
ServerFlie = input('请输入远程服务器文件路径(完整路径):')
SaveName = input('请输入本地保存名称:' + WorkDir + '\\')
LocalFlie = WorkDir + '\\' + SaveName
print('正在与服务器通讯并获取文件信息......')
try:
send('size', ServerFlie.encode('utf-8'))
data = data_split(Client.recv(1024 * 1024 * 100))
FileSize = int(data[1].decode('utf-8'))
if data[0] == 'error':
raise BaseException(data[1].decode('utf-8'))
else:
print('正在打开服务器文件......')
send('open', ServerFlie.encode('utf-8'))
try:
data = data_split(Client.recv(1024 * 1024 * 100))
if data[0] == 'error':
raise BaseException('无法打开文件!')
except:
print('无法打开服务器文件!')
else:
print('开始下载文件.......')


Completed_Size = 0 # 已完成大小
with open(LocalFlie, 'wb+') as Fopen:
while Completed_Size < FileSize:
send('get', str(Completed_Size).encode('utf-8'))
data = data_split(Client.recv(1024 * 1024 * 100))
if data[0] == 'get':
Fopen.write(data[1])
Fopen.flush()
Completed_Size = Completed_Size + len(data[1])
print('\r下载进度:'+str(round(Completed_Size/FileSize*100,2))+'%',end="")
print('\n')

except BaseException as error:
print('文件获取失败!返回的失败原因:' + str(error))
continue
else:
if len(Scmd) >= 2:
# ------获取目录------
if Scmd[0].lower() == 'dir':
temp_src = Scmd[1]
for x in range(2, len(Scmd)):
temp_src = temp_src + ' ' + Scmd[x]
send('dir', temp_src.encode('utf-8'))
try:
data = data_split(Client.recv(1024 * 1024 * 100))
if data[0] == 'filelist':
temp_dir = data[1].decode('utf-8')
temp_dir = eval(temp_dir)
print('查看目录下有%d个文件:' % (len(temp_dir)))
print('%-5s%-20s%-50s' % ('类型', '大小', '名称'))
for x in temp_dir:
print('%-5s%-20s%-50s' % (
{True: '目录', False: '文件'}.get(x[1], '文件'), rettextsize(x[2]), x[0]))
elif data[0] == 'error':
print('Client服务器返回错误:' + data[1].decode('utf-8'))

except:
print('Client:获取失败!服务器返回了错误的数据!')
elif Scmd[0].lower() == 'debug':
temp_cmd = Scmd[2]
for x in range(3, len(Scmd)):
temp_cmd = temp_cmd + ' ' + Scmd[x]
send(Scmd[1], temp_cmd.encode('utf-8'))

try:
data = data_split(Client.recv(1024 * 1024 * 100))
print('head:' + data[0] + '\n'
'body:' + str(data[1]) + '\n'
'body(文本):' + data[1].decode(
'utf-8'))
except:
print('Client:出现错误!')

 

elif Enter_id in ('3', '三', '叁', '关于此客户端程序', 'c', 'C'):
try:
print(__import__('requests').get('http://blog.zhangyishang.top/copyright.txt').content.decode(
'utf-8')) # 版权文字
except:
print(
'※ Python T喵服务器传输文件 --- 程序由 BY我叫以赏 And Pikachu 制作 ※ 未经允许禁止商用 ※ 个人网站:http://blog.zhangyishang.top ※')
else:
print('※ Python T喵服务器传输文件 --- 程序由 BY我叫以赏 And Pikachu 制作 ※')
elif Enter_id in ('4', '四', '肆', '断开服务器并退出', 'd', 'D'):
os.喵(os.getpid(), 0)
else:
print('*输入错误或者还未连接服务器!')
except KeyboardInterrupt:
print('\n※您结束了程序※')
os.喵(os.getpid(), 0) # 杀喵自身进程 第二个参数是退出代码
break
except BaseException as error:
continue

 

2020-04-16T16:44:39 点赞:0

(获奖名单见评论区置顶)【六一活动】来时光游乐园玩游戏、寻线索、找宝藏! 中回复

在?青年节了解一下!

2020-05-30T11:09:14 点赞:0

Python 使用白嫖网易翻译 API 进行翻译 中回复

我是一段测试文本啊

2020-05-31T19:02:33 点赞:0

【求助】地图 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:07:26 点赞:0

【作品秀】本人最完美OS——Cr OS Pro 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:08:08 点赞:0

新封面通知 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:08:14 点赞:1

成立滑稽狗头帮 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:08:18 点赞:1

向阳学喵作室——招人!进入门槛通知 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:11 点赞:0

谁知道怎么做聊天室(有金币) 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:21 点赞:0

欢迎加入!!!向阳学喵作室——招工啦!!! 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:27 点赞:0

这里有个人冤枉人,没证据还说我毁图,封他的号 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:32 点赞:0

欢乐城市发布了(审核ing) 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:42 点赞:0

举报,有人污蔑 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:09:48 点赞:0

向阳学喵作室——重大消息 中回复

我支持你的作品或者是观点,希望你可以继续努力,我是自动回复的机器人,希望我可以激励你创造出更好的作品!加油!

2020-05-31T19:10:03 点赞:0

论坛管喵,来封我号啊 中回复

如果大家要模仿的话,请不要破坏编程猫论坛规则哦

2020-06-04T15:26:02 点赞:2

编程喵坛最全API !!!已打包成py模块! 中回复

APIs.txt地址:

手机用户复制:https://gitee.com/wojiaoyishang/Codemao-shequ-APIs/blob/master/APIs.txt

电脑用户复制:https://gitee.com/wojiaoyishang/Codemao-shequ-APIs/blob/master/APIs.txt

2020-08-10T13:59:15 点赞:0