📜  使用 Django 的维基百科搜索应用项目(1)

📅  最后修改于: 2023-12-03 14:49:38.959000             🧑  作者: Mango

使用 Django 的维基百科搜索应用项目

本项目是一个使用 Django 框架创建的维基百科搜索应用。它基于维基百科 API,可以通过关键字搜索维基百科页面,并展示相关的搜索结果。

如何使用
  1. 克隆项目代码到本地:

    git clone https://github.com/your_username/your_project.git
    
  2. 进入项目目录:

    cd your_project
    
  3. 安装依赖:

    pip install -r requirements.txt
    
  4. 运行数据库迁移:

    python manage.py migrate
    
  5. 启动开发服务器:

    python manage.py runserver
    
  6. 打开浏览器,访问 http://localhost:8000 即可查看应用界面。

功能特点
  • 用户可以在搜索框中输入关键字,并点击搜索按钮进行搜索。
  • 搜索结果以列表的形式展示,每个结果包含标题、摘要和链接到维基百科页面的链接。
  • 用户可以点击搜索结果的链接跳转到对应的维基百科页面进行详细阅读。
  • 支持分页功能,每页显示固定数量的搜索结果。
  • 提供搜索建议功能,用户在搜索框中输入字符时,会自动弹出相关的搜索建议供用户选择。
技术栈
  • Django:一个用于构建 Web 应用的高级 Python Web 框架。
  • Django REST framework:用于构建强大的 Web API 的 Django 扩展。
  • Bootstrap:用于快速构建漂亮的响应式网站的前端框架。
  • jQuery:一个功能强大的 JavaScript 库,用于简化 HTML 文档的遍历、事件处理、动画等操作。
代码示例

以下为一个简单的 Django View 的代码示例,用于处理搜索请求和渲染搜索结果页面。

from django.shortcuts import render
import requests

def search(request):
    keyword = request.GET.get('q', '')
    api_url = f'https://en.wikipedia.org/w/api.php?action=query&list=search&format=json&srsearch={keyword}'
    response = requests.get(api_url)
    search_results = response.json()['query']['search']
    context = {
        'keyword': keyword,
        'results': search_results,
    }
    return render(request, 'search_results.html', context)

以上代码中的 search 函数接收名为 request 的参数,从 GET 请求中获取搜索关键字 q。然后,它使用维基百科 API 请求搜索结果,并将结果传递给模板 search_results.html 进行渲染。

结语

通过使用 Django 框架,我们可以方便地构建一个功能强大的维基百科搜索应用。希望这个介绍对你有帮助,快速上手开发吧!