python - 请求在我的 DJANGO 项目之一中不起作用
问题描述
我在使用请求包时遇到问题,我已尽力解决此问题。
问题请求在我的 Django 项目之一中不起作用。它返回 403 禁止。但是相同的代码正在我的另一个 Django 项目上运行(相同的笔记本电脑具有相同的互联网连接,但不同的虚拟环境)。
因此,因此,我无法在我现有的 Django 项目之一中使用 requests 包。
这是代码:这是我将在具有两个不同虚拟环境的两个 Django 项目上运行的演示代码。
import requests
from bs4 import BeautifulSoup
from django.shortcuts import render
# from .models import RequestData
def home(request):
data = []
urls = [
"https://api.github.com/search/repositories",
"https://www.dataquest.io",
"https://www.python.org",
"https://api.github.com/events"
]
for url in urls:
r = requests.get(url)
soup = BeautifulSoup(r.text, 'html.parser')
if soup.title:
data.append(str(soup.title))
else:
data.append("No Title")
return render(request, "requester/index.html", {'data': data})
这是我的 HTML 部分:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
{% for dat in data %}
<li>{{dat}}</li>
{% endfor %}
</body>
</html>
这是我对 Django 项目的回复。
第一(有问题的)
二(没问题)
另外,我尝试了不同版本的请求包,但仍然有同样的问题。
解决方案
你也使用相同的 urls.py 吗?我可以看到差异(tst vs test)你可能正在调用另一个函数。
推荐阅读
- go - GRPC:什么时候有新客户?
- asp.net - 如何在运行时更改注入实例的 Serilog LogLevel
- python - 传递多个字典观察以发挥作用?
- python - Kivy:如何从自定义 BoxLayout 显示 ScrollView?
- html - 拉伸一个元素以填充其容器的其余部分,同时推动以下元素进行包装?
- mysql - Netbeans MySQL连接:服务器属性错误
- c# - 使用 linq 或普通 c# 填充给定的对象结构
- ios - 如何在自定义单元格中同步选择文本视图的事件?
- javascript - 如何使用参数创建对象的属性,而不必对每个对象进行相等
- python - “错误的身份验证失败。” 在python中连接到mongodb atlas时出错