Python+tkinter实现制作文章搜索软件

目录
  • 前言
    • 环境使用
    • 模块使用
    • 最终效果
  • 界面实现代码
    • 导入模块
    • 创建窗口
    • 标题图片
    • 搜索框
    • 内容显示界面
  • 内容效果代码

前言

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

环境使用

Python 3.8

Pycharm

模块使用

import requests

import tkinter as tk

from tkinter import ttk

import webbrowser

最终效果

界面实现代码

导入模块

import tkinter as tk
from tkinter import ttk

创建窗口

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

root.mainloop()

标题图片

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

搜索框

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)

内容显示界面

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)

内容效果代码

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文章搜索内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python 制作本地应用搜索工具

    一.准备工作 请确保已经安装tkinter.pyperclip.threading 二.预览 1.启动 这是程序启动的主界面. 2.运行 搜索之后的界面. 3.结果 选择应用,右击鼠标复制它的下载链接. 三.设计思路 四.源代码 本次还是将GUI和搜索引擎分离开来,只要下面两个py文件在一个文件夹,结合已有的数据库就能实现上述功能. 4.1 GUI.py from tkinter import * from tkinter import ttk from tkinter import messa

  • 用python实现一个文件搜索工具

    目录 前言 步骤 操作如下: 完整代码: 总结 前言 经常使用电脑自带的搜索很慢很卡,今天做一个搜索工具,可以搜索到隐藏的文件,而且速度也很快 步骤 导入模块 import os 检测一下输入的路径最后一位有没有/,如果没有则添加,是为了方便操作 if DIR.endswith('/') == True: pass else: DIR = DIR+'/' 用来循环检测文件,进入文件目录然后检测,再次进入检测,循环往复 def iterbrowse(path): for home, dirs, f

  • 利用Python实现自制文件搜索小工具

    目录 前言 环境准备 完整代码 前言 嗨嗨,大家晚上好 ~ 当自己电脑文件很多还有点乱,不记得自己文件放哪里的时候,用电脑自带的搜索文件,这个等待时间可慢了 对我们这种敲代码的,这能忍吗,所以我们不如自己用python做一个搜索工具!犄角旮旯的文件都能一秒钟搜索出来的那种! 一不小心还能把你们男(女)朋友那些藏的很深的不可告人的文件分分钟找出来~ 话不多说,赶紧开始吧 环境准备 解释器: Python 3.8.8 | Anaconda, Inc. 编辑器: pycharm 专业版 完整代码 就不

  • python基于搜索引擎实现文章查重功能

    前言 文章抄袭在互联网中普遍存在,很多博主都收受其烦.近几年随着互联网的发展,抄袭等不道德行为在互联网上愈演愈烈,甚至复制.黏贴后发布标原创屡见不鲜,部分抄袭后的文章甚至标记了一些联系方式从而使读者获取源码等资料.这种恶劣的行为使人愤慨. 本文使用搜索引擎结果作为文章库,再与本地或互联网上数据做相似度对比,实现文章查重:由于查重的实现过程与一般情况下的微博情感分析实现流程相似,从而轻易的扩展出情感分析功能(下一篇将在此篇代码的基础上完成数据采集.清洗到情感分析的整个过程). 由于近期时间上并不充

  • Python+tkinter实现制作文章搜索软件

    目录 前言 环境使用 模块使用 最终效果 界面实现代码 导入模块 创建窗口 标题图片 搜索框 内容显示界面 内容效果代码 前言 无聊的时候做了一个搜索文章的软件,有没有更加的方便快捷不知道,好玩就行了 环境使用 Python 3.8 Pycharm 模块使用 import requests import tkinter as tk from tkinter import ttk import webbrowser 最终效果 界面实现代码 导入模块 import tkinter as tk fro

  • 教你如何使用Python Tkinter库制作记事本

    Tkinter库制作记事本 现在为了创建这个记事本,你的系统中应该已经安装了 Python 3 和 Tkinter.您可以根据系统要求下载合适的python 包.成功安装 python 后,您需要安装 Tkinter(一个 Python 的 GUI 包). 使用此命令安装 Tkinter : pip install python-tk 导入 Tkinter : import tkinter import os from tkinter import * from tkinter.messageb

  • Python实战之制作天气查询软件

    前言 本文主要给大家介绍的是关于Python制作天气查询软件,下面话不多说了,来一起看看详细的介绍吧 效果图 以前,给大家分享了如何使用 PyQt5 制作猜数游戏和计时器,这一次,我们继续学习:如何使用 PyQt5 制作天气查询软件. 源代码和 exe 文件: github 地址:https://github.com/xflywind/Python-Application 本地下载:http://xiazai.jb51.net/201905/yuanma/weather-python(jb51.

  • python tkinter 做个简单的计算器的方法

    背景 最近本菜鸡在学习 python GUI,从 tkinter 入门,想先做个小软件练习一下 思来想去,决定做一个 计算器 设计思路 首先,导入我们需要的包 - tkinter,并通过 实例化一个 Tk 对象 创建窗口 因为我有点菜,目前还把控不好各组件的位置,所以窗口使用自动默认的大小 import tkinter as tk import tkinter.messagebox win = tkinter.Tk() win.title("计算器") win.mainloop() 大

  • Python Tkinter Canvas画布控件详解

    目录 Canvas控件基本属性 Canvas控件绘图常用方法 Canvas 控件具有两个功能,首先它可以用来绘制各种图形,比如弧形.线条.椭圆形.多边形和矩形等,其次 Canvas 控件还可以用来展示图片(包括位图),我们将这些绘制在画布控件上的图形,称之为“画布对象”. 每一个画布对象都有一个“唯一身份ID”,这是 Tkinter 自动为其创建的,从而方便控制和操作这些画布对象. 通过 Canvas 控件创建一个简单的图形编辑器,让用户可以达到自定义图形的目的,就像使用画笔在画布上绘画一样,可

  • python Tkinter模块使用方法详解

    目录 一.前言 1.1.Tkinter是什么 二.准备工作 2.1.Windows演示环境搭建 三.Tkinter创建窗口 3.1.创建出一个窗口 3.2.给窗口取一个标题 3.3.窗口设置 3.3.创建按钮,并且给按钮添加点击事件 3.4.窗口内的组件布局 四.Tkinter基本控件介绍 4.1.封装 4.2.文本显示_Label 4.3.按钮显示_Button 4.4.输入框显示_Entry 4.5.文本输入框显示_Text 4.6.复选按钮_Checkbutton 4.7.单选按钮_Rad

  • python tkinter库的Text记录点击路经和删除记录详情

    目录 前言 对点击打开的文件路径进行记录显示 记录点击的文件路径和文件夹路径 记录文件路径,在text中显示,删除和关闭窗口 前言 需要注意,对实例化的文本组件的insert.delete等操作的index**都是浮点型而不是整型**,(1.0,2.0)表示的是对第一行操作,关闭窗口需要知道作用的对象是最根本的窗口,不是某个Frame. Text的几个主要设置参数: 第一个参数:窗体或框架变量 state:控制是否可以修改text的文字内容,normal,disable width,height

  • Python+tkinter实现音乐下载软件的制作

    目录 前言 效果展示 代码部分 前言 平常我们下载的歌曲,都是各种妖魔鬼怪的格式横行,想下载下来用一下都不行,还只能在它的播放器内听,这谁受得了~ 学Python是用来干嘛的? 当然是解决问题咯~ 于是我直接写了一手音乐下载软件,强制全部保存mp3,这样就没有限制了~ 什么?还要马内?不存在的,别慌,保证全部都能下载! 效果展示 这是我们今天要写的软件界面 然后我们选一首歌 高跟鞋看起来要马内,就它了~ 好有道理,我竟然无言以对~ 跑题了… 输入音乐ID 点击下载 看看下载好了 我们可以把这个文

  • python 制作磁力搜索工具

    不知不觉已经到了 大年三十,在此祝大家 牛年大吉,恭喜发财!今天还是要发一篇博客,是关于tkinter的一款磁力搜索GUI工具,可以帮助我们检索网络 资源. 一.准备工作 装库,主要有tkinter os threading win32 pillow 二.预览 预览我们的软件 1.启动 2.运行 3.结果 可以选择保存链接到本地,也可以选择复制链接倒剪切板. 3.1保存到本地: 保存格式为txt 3.2复制链接: 复制以后,如果存在第三方下载工具,就能在工具中打开. 三.tk源代码 设计流程就不

  • Python+Tkinter制作猜灯谜小游戏

    目录 导语 正文 1)效果展示 2)主程序 导语 元宵节,又称上元节.灯节,是春节之后的第一个重要节日. 相传,汉文帝(前179—前157年)为庆祝周勃于正月十五勘平诸吕之乱,每逢此夜,必出宫游玩,与民同乐,在古代,夜同宵,正月又称元月,汉文帝就将正月十五定为元宵节. 随着社会和时代的变迁,元宵节的风俗习惯在不断变化,但至今仍是中国的传统节日.2008年,元宵节选入第二批国家级非物质文化遗产. 对我而言,除了吃元宵.看花灯……还有一件最重要的事情…就是… 猜灯谜!猜灯谜!!猜灯谜!!!猜谜事小,

随机推荐