Django搜索字段重新发送来自另一个站点的请求

2024-06-09 20:24:31 发布

您现在位置:Python中文网/ 问答频道 /正文

如何使用django创建一个搜索字段,该字段将能够执行来自另一个网站的请求并从该网站返回一些信息。例如,如果我在搜索字段中提交此表单编号(PGA1512194112),应用程序将能够转到https://mis.unijos.edu.ng/pg/admissions/,搜索PGA1512194112并返回PGA1512194112的全名、表单编号、教员、部门、课程和课程。你知道吗

视图的示例(这不是演示)

    def form(request):
        query = request.GET.get['q']
        if query is valid
            return HttpResponseRedirect(form2)
        else
            search page
        context = {'query': query}
        return render(request,'.html', context)

注意:我甚至不知道视图的格式会是什么样子。你知道吗

'定义表单(请求):

        if request.GET:
            url = 'URL'
            query = request.GET.get('q')
            resp = requests.post(url, data=query)
            print ('resp.content')
        else:
            query=''
        context = {'query': query, 'resp': resp}
        return render(request, 'library/terms.html', context)'

Tags: 视图表单getreturnif网站requestcontext
2条回答

我不知道这样做是否合法的一种方法是:

使用selenium包将文本输入到网站搜索框,然后selenium将能够访问生成的网页,最后您将能够使用url包或任何您想要从网站检索整个html的东西执行对网站的请求。你知道吗

结果网页的信息应该总是以相同的格式,这样就不会太难解析它,只检索你需要的信息。您还可以使用beautifulsoup来拥有更多的工具来解析它。你知道吗

如果您有权使用他们的API,以下操作将起作用:

import requests

url = 'https://mis.unijos.edu.ng/pg/admissions/ajax/ajax_get_admission.php'
data = {
    'q': 'PGA1512194112'
}
resp = requests.post(url, data=data) 

print resp.content

这将返回html,但解析结果html以获取所需信息应该不会太困难。你知道吗

相关问题 更多 >