Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

前言

无聊的时候做了一个搜索文章的软件,有没有更加的方便快捷不知道,好玩就行了

环境使用

  • Python 3.8
  • Pycharm

模块使用

  • import requests
  • import tkinter as tk
  • from tkinter import ttk
  • import webbrowser

最终效果

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

导入模块

import tkinter as tk
from tkinter import ttk

创建窗口

root = tk.Tk()
root.title('问题搜索')
root.geometry('900x700+100+100')
root.iconbitmap('search.ico')

root.mainloop()

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

标题图片

img = tk.PhotoImage(file='封面.png')
tk.Label(root, image=img).pack()

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

搜索框

search_frame = tk.Frame(root)
search_frame.pack(pady=10)
search_va = tk.StringVar()
tk.Label(search_frame, text='问题描述:', font=('黑体', 15)).pack(side=tk.LEFT, padx=5)
tk.Entry(search_frame, relief='flat', width=30, textvariable=search_va).pack(side=tk.LEFT, padx=5, fill='both')
tk.Button(search_frame, text='搜索一下', font=('黑体', 12), relief='flat', bg='#fe6b00').pack(side=tk.LEFT,padx=5)

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

内容显示界面

tree_view = ttk.Treeview(root, show="headings")

tree_view.column('num', width=1, anchor='center')
tree_view.column('title', width=150, anchor='w')
tree_view.column('author', width=10, anchor='center')
tree_view.column('date', width=10, anchor='center')
tree_view.column('link', width=30, anchor='center')
tree_view.heading('num', text='序号')
tree_view.heading('title', text='标题')
tree_view.heading('author', text='作者')
tree_view.heading('date', text='发布时间')
tree_view.heading('link', text='链接')

tree_view.pack(fill=tk.BOTH, expand=True, pady=5)

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

内容效果代码

def search(word):
    search_list = []
    num = 0
    for page in range(1, 4):
        url = 'https://so.csdn.net/api/v3/search'
        data = {
            'q': word,
            't': 'all',
            'p': page,
            's': '0',
            'tm': '0',
            'lv': '-1',
            'ft': '0',
            'l': '',
            'u': '',
            'ct': '-1',
            'pnt': '-1',
            'ry': '-1',
            'ss': '-1',
            'dct': '-1',
            'vco': '-1',
            'cc': '-1',
            'sc': '-1',
            'akt': '-1',
            'art': '-1',
            'ca': '-1',
            'prs': '',
            'pre': '',
            'ecc': '-1',
            'ebc': '-1',
            'urw': '',
            'ia': '1',
            'dId': '',
            'cl': '-1',
            'scl': '-1',
            'tcl': '-1',
            'platform': 'pc',
        }
        headers = {
            'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36'
        }
        response = requests.get(url=url, params=data, headers=headers)
        for index in response.json()['result_vos']:
            title = index["title"].replace('<em>', '').replace('</em>', '')
            dit = {
                'num': num,
                'title': title,
                'author': index['nickname'],
                'date': index['create_time_str'],
                'link': index['url'],
            }
            num += 1
            search_list.append(dit)
    return search_list


def show(search_list):
    # 往树状图中插入数据
    for index, stu in enumerate(search_list):
        tree_view.insert('', index + 1,
                         values=(stu['num'], stu['title'], stu['author'], stu['date'], stu['link']))


def click():
    key_word = search_va.get()
    if key_word:
        search_list = search(word=key_word)
        # 往树状图中插入数据
        show(search_list)

# 单击 获取当前点击行的值
def tree_view_click(event):
    # 遍历选中的元素
    for item in tree_view.selection():
        # 获取选中元素的值
        item_text = tree_view.item(item, "values")
        # 打印选中元素的值
        # print(item_text)
        webbrowser.open(item_text[-1])

Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python tkinter 制作文章搜索软件,有没有方便快捷不知道,好玩就行了 - Python技术站

(0)
上一篇 2023年4月2日
下一篇 2023年4月2日

相关文章

  • Python tkinter 做一个VIP视频解析的桌面软件,100%你会爱上它

    前言 tkinter:GUI桌面应用开发模块,写软件界面你还可以打包成exe软件, 哪怕你没有python环境, 一样可以用虽然不一定要有界面, 但是有界面, 用户体验很棒… 环境使用 Python 3.8 Pycharm 模块使用 import tkinter import webbrowser 最终实现的效果 对于本篇文章有疑问的同学可以加【资料白嫖、解…

    Python开发 2023年4月2日
    00
  • Python实现一个简单的自动评论,自动点赞,自动关注脚本

    前言 今天的这个脚本,是一个别人发的外包,交互界面的代码就不在这里说了,但是可以分享下自动评论、自动点赞、自动关注、采集评论和视频的数据是如何实现的 开发环境 python 3.8 运行代码pycharm 2021.2 辅助敲代码requests 第三方模块 原理: 模拟客户端,向服务器发送请求 对于本篇文章有疑问的同学可以加【资料白嫖、解答交流群:7531…

    Python开发 2023年4月2日
    00
  • Python获取手机4K壁纸,一个入门练手的案例

    前言 一. 数据来源分析 明确需求, 我们采集网上什么数据内容, 在什么地方 分析我们想要高清原图在什么地方有 浏览器自带工具: 开发者工具 F12 鼠标右键点击 插件 选择 network 刷新网页 点击选择 Img 可以直接找到图片地址 通过搜索分析, 可以知道, 我们想要图片原图url 就在 图片详情页网页源代码里面 二. 代码大概实现步骤 发送请求,…

    Python开发 2023年4月2日
    00
  • Python制作自动答题脚本,100%准确率,1秒10题提高效率

    前言 环境使用 Python 3.8 Pycharm 模块使用 import requests —> 数据请求模块 pip install requests import parsel —> 数据解析模块 pip install parsel from selenium import webdriver —> 自动测试模块 pip inst…

    Python开发 2023年4月2日
    00
  • Python tkinter 一个Music download software的界面

    前言 本次案例最终实现效果 开发环境 python 3.8: 解释器 pycharm: 代码编辑器 界面代码实现 先导入所需模块 import tkinter as tk from tkinter import ttk import tkinter.messagebox 创建窗口 root = tk.Tk() root.title(‘XXX’) # 名字自己…

    Python开发 2023年4月2日
    00
  • 英语不好能学好Python吗?Python常用英文单词汇总

    一、交互式环境与print输出 1、print:打印/输出2、coding:编码3、syntax:语法4、error:错误5、invalid:无效6、identifier:名称/标识符7、character :字符 二、字符串的操作 1、user:用户2、name:姓名/名称3、attribute:字段/属性4、value:值5、key:键 三、重复/转换/…

    Python开发 2023年4月2日
    00
  • Python爬取全球疫情数据,制作数据可视化图

    前言 开发环境 python 3.8: 解释器 pycharm: 代码编辑器 requests 发送请求 pyecharts 绘制图表 pandas 读取数据 爬虫案例思路流程: 一. 数据来源分析: 确定需求, 采集那个网站上面什么数据 抓包分析, 通过开发者工具进行抓包分析<浏览器自带工具>开发者工具F12 刷新网页 清空数据, 点击选择找相…

    Python开发 2023年4月2日
    00
  • Python获取“双十一”商品评论,做词云分析,一个简单的案例教学

    前言 环境使用 Python 3.8 Pycharm 模块使用 requests jieba 结巴分词 wordcloud 词云 数据来源分析 明确需求 <数据来源分析> 采集数据是什么东西? 通过那个url地址得到想要数据的内容 抓包分析: 浏览器自带工具 –> 开发者工具I. F12 或者 鼠标右键点击检查 选择 network 点击…

    Python开发 2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部