【django】关于request.POST[]和request.POST.get()的问题 5C

自己写了个django网站,今天用postman和python requests.post分别进行了登录接口测试,结果发现postman一直报错MultiValueDictKeyError at /login而requests.post是正常。然后我修改了uname和upwd的参数,发现request.POST.get()参数正常,request.POST[]会报错。这个是为什么呢?
代码如下:

uname = request.POST.get('uname')
upwd = request.POST['upwd']

同时想请教一下postman和requests工作原理上的区别,谢谢!

ttphoon
ttphoon 我知道post[]和pst.get()的基本区别一个是没获取到会报错,一个是不会报错。
大约一年之前 回复

2个回答

ttphoon
ttphoon 我问的是request.POST.get()和request.POST[]的区别,不是requests.post和get,谢谢
大约一年之前 回复

request.POST['upwd'] 错误,是因为它不是list或者dict类型,或者他们的子类型,所以你使用这个方法报错
request.POST.get('uname') 成功,是因为request.POST父类实现了get这个方法
图片说明
postman 谷歌一款模拟网络请求工具
requests 你自己开发的模拟网络请求脚本
本质上都是模拟网络请求,但是postman可直接使用chrome上该域名cookies

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
django get请求会获取旧的数据,检测get请求未执行方法 但经过了中间件,不知道为什么

``` 'django.middleware.cache.UpdateCacheMiddleware', # This must be first on the list 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'MiddleWare.auth.authenticationMiddleWare', 'django.middleware.cache.FetchFromCacheMiddleware', # This must be last ``` 以上是中间件

<python从入门到实践>19章书中只给topic设定了owner,但是entry没有出现了报错django.db.utils.OperationalError: no such column: learning_logs_entry.owner_id

我用改topic的方法改了new_entry,也没有行通。 views.py ``` from django.shortcuts import render from django.http import HttpResponseRedirect from django.urls import reverse from .models import Topic,Entry from .forms import TopicForm,EntryForm from django.contrib.auth.decorators import login_required def index(request): #学习笔记的主页 return render(request,'learning_logs/index.html') @login_required def topics(request): #显示所有的主题 topics = Topic.objects.filter(owner=request.user).order_by('date_added') context = {'topics':topics} return render(request,'learning_logs/topics.html',context) @login_required def topic(request,topic_id): #显示单个主题及其所有的项目 topic = Topic.objects.filter(owner=request.user).get(id = topic_id) #确认请求的主题属于当前用户 if topic.owner != request.user: raise Http404 entries = topic.entry_set.order_by('-date_added') context = {'topic':topic,'entries':entries} return render(request,'learning_logs/topic.html',context) @login_required def new_topic(request): '''添加新主题''' if request.method != 'POST': #未提交数据 创建一个新表单 form = TopicForm() else: #POST提交的数据 对数据进行处理 form = TopicForm(request.POST) if form.is_valid(): new_topic = form.save(commit=False) new_topic.owner = request.user new_topic.save() return HttpResponseRedirect(reverse('learning_logs:topics')) context = {'form':form} return render(request, 'learning_logs/new_topic.html',context) @login_required def new_entry(request,topic_id): topic = Topic.objects.get(id=topic_id) if request.method != 'POST': form = EntryForm() else: form = EntryForm(data=request.POST) if form.is_valid(): return HttpResponseRedirect(reverse('learning_logs:topic',args=[topic_id])) context = {'topic':topic,'form':form} return render(request, 'learning_logs/new_entry.html',context) @login_required def edit_entry(request,entry_id): '''编辑现有的条目''' entry = Entry.objects.get(id=entry_id) topic = entry.topic if topic.owner != request.user: raise Http404 if request.method != 'POST': form = EntryForm(instance=entry) else: #POST提交的数据,对数据进行处理 form = EntryForm(instance=entry,data=request.POST) if form.is_valid(): form.save() return HttpResponseRedirect(reverse('learning_logs:topic',args=[topic.id])) context = {'entry':entry, 'topic':topic, 'form':form } return render(requ ``` models.py ``` from django.db import models from django.contrib.auth.models import User class Topic(models.Model): #用户学习主题 text = models.CharField(max_length= 200) date_added = models.DateTimeField(auto_now_add=True) owner = models.ForeignKey(User,on_delete=models.CASCADE) def __str__(self): #返回模型的字符串表示 return self.text class Entry(models.Model): #学到的有关某个主题的具体知识 topic = models.ForeignKey(Topic,on_delete=models.CASCADE) text = models.TextField() date_added = models.DateTimeField(auto_now_add= True) owner = models.ForeignKey(User, on_delete=models.CASCADE) class meta: verbose_name_plural ='entries' def __str__(self): #返回模型的字符串表示 if len(self.text) >= 50: return self.text[:50] + '...' else: return self.text[:] ```

django 关于post请求长度限制问题

我用django框架做了个接口,接受一个图片,处理图片,返回结果。 调用接口的测试代码是这样的: ``` img = cv2.imread('C:\\Users\\51530\\Desktop\\openFace\\43.png',cv2.IMREAD_GRAYSCALE) parms = { 'img' : img } # test = { # 'name':'yuhaibo' # } re=requests.post('http://127.0.0.1:8001/identifyUser/', data = parms) # re=requests.post('http://127.0.0.1:8001/test/', data = test) print(re.text) ``` 运行的结果就是提示我 TooManyFieldsSent at /identifyUser/ The number of GET/POST parameters exceeded settings.DATA_UPLOAD_MAX_NUMBER_FIELDS. 我加注释的部分运行时没问题的,就是传图片(用opencv读取的图片)出了问题,请大神指教下,我这个接口想接收图片,应该怎么改? 万分感谢!!!

一筹莫展 Django显示 MultiValueDictKeyError at /myDetector/

我试过很多办法了 都没法解决 哥哥们帮忙看看 ![图片说明](https://img-ask.csdn.net/upload/201905/17/1558060013_805939.png) 代码见下 mainDealer()函数 def mainDealer(request): # post = request.POST.items() print("rawTarget =", request.POST["rawTarget"]) target = reverse("myDetector:tempTest") + '?' argName = request.POST["paramName"] argPath = argName.split("?")[0] argName = argName.split("?")[1] # dealt by model lmModel = Judger.readModelFromFile(name=Judger.getFileName( argName, "2018119", "lm"), obj_hook=Judger.lmFromFile) cmModel = Judger.readModelFromFile(name=Judger.getFileName( argName, "2018119", "cm"), obj_hook=Judger.cmFromFile) lmPredictRst = lmModel.predict( samples=[ request.POST["paramValue"]], realRst=[]) cmPredictRst = cmModel.predict( samples=[ request.POST["paramValue"]], realRst=[]) judgeRst = {"lm": lmPredictRst[0], "cm": cmPredictRst[0]} if not judgeRst["lm"]: addNewMarkedValue(argName, request.POST["paramValue"], "lm", argPath) if not judgeRst["cm"]: addNewMarkedValue(argName, request.POST["paramValue"], "cm", argPath) # request.session["argName"] = argName request.session["argPath"] = argPath request.session["argValue"] = request.POST["paramValue"] request.session["ip"] = request.META['REMOTE_ADDR'] request.session["judgeRst"] = judgeRst request.session["rawTarget"] = request.POST["rawTarget"] target = target[:-1] return HttpResponseRedirect(target) urlpatterns = [ url(r'^$', views.mainDealer, name='mainDealer'), url(r'^tempTest/$', views.tempTest, name='tempTest'), url(r'^showModels/$', views.showModels, name='showModels'), url(r'^delOneMarkedValue/$', views.dealMv), url(r'^reTrain/$', views.reTrain), url(r'^machineClassificationRst/$', views.readMLClassificationRst), url(r'^dealMLClassificationRst/$', views.dealMLClassificationRst), url(r'^xssIntoDb/$', views.xssIntoDb, name='xssIntoDb'), url(r'^xssDetectorPage/$', views.xssDetectorPage, name='xssDetectorPage'), url(r'^readXss/$', views.readXss, name='readXss'), url(r'^xssStateChange/$', views.xssStateChange, name='xssStateChange'), ] 试了request.POST.get() 没有用 依旧报错

Django 在后台管理页面中实现添加用户报错:RuntimeError at /admin/booktest/bookinfo/add/ generator raised StopIteration

#报错问题:(WIN10+python3.7+django1.8.2) ```python Environment: Request Method: POST Request URL: http://127.0.0.1:8000/admin/booktest/bookinfo/add/ Django Version: 1.8.2 Python Version: 3.7.4 Installed Applications: ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'booktest') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware') Traceback: File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\core\handlers\base.py" in get_response 125. response = middleware_method(request, callback, callback_args, callback_kwargs) File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\middleware\csrf.py" in process_view 174. request_csrf_token = request.POST.get('csrfmiddlewaretoken', '') File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\core\handlers\wsgi.py" in _get_post 137. self._load_post_and_files() File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\request.py" in _load_post_and_files 260. self._post, self._files = self.parse_file_upload(self.META, data) File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\request.py" in parse_file_upload 225. return parser.parse() File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\multipartparser.py" in parse 149. for item_type, meta_data, field_stream in Parser(stream, self._boundary): File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\multipartparser.py" in __iter__ 628. yield parse_boundary_stream(sub_stream, 1024) File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\multipartparser.py" in parse_boundary_stream 567. chunk = stream.read(max_header_size) File "A:\MyApply\Soft\CodeApply\Python\virtualenv\env\lib\site-packages\django\http\multipartparser.py" in read 337. out = b''.join(parts()) Exception Type: RuntimeError at /admin/booktest/bookinfo/add/ Exception Value: generator raised StopIteration ```

django用户登录后回到主页,无法获取已登录状态

#views.py定义的视图 from django.contrib.auth import authenticate,login def user_login(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user: if user.is_active: login(request,user) return HttpResponseRedirect('/homepage/') #回到主页 else: #返回账户invalid的消息 else: #返回login页面 ``` #在主页的显示html文件中,使用is_authenticated先判断了用户是否登录了,如下: {% if user.is_authenticated %} <h5>>Hello {{ user.username }} !</h5> {%else%} <h5>Weclome !</h5> {%endif%} 问题是:在user_login视图里,使用login后,能正常返回到主页,说明登录成功,可是在主页中,使用is_authenticated判定后,总是为False,总是无法显示已登录的状态。 环境:Python 2.7,Django:1.10

求解!!!!!请问怎样调用在django自带的数据库中新建立的数据表?

下面是view.py 的一部分代码,我想把用户输入的数据存到“书籍信息表”,但是 不知道哪里出问题了,django自带了sqlite3数据库,要使用在sqlite3里新建立的表要不要先连接,求解!!! 数据表分别有:用户信息表、书籍信息表、管理员信息表 from django.shortcuts import render, redirect from .models import 用户信息表, 书籍信息表, 管理员信息表 from django.contrib.auth import authenticate, login, logout from django.contrib.auth.models import User from django.contrib import auth def sell(request): if request.method == ‘GET’: return render(request, ‘我要卖.html’) elif request.method == ‘POST’: 书名 = request.POST【‘书名’】 作者 = request.POST【‘作者’】 try: ISDN码 = request.POST【‘ISDN’】 出版社 = request.POST【‘出版社’】 卖家联系方式 = request.POST【‘电话’】 product = 书籍信息表() product.book_name = 书名 product.author = 作者 product.isdn码 = ISDN码 product.publisher = 出版社 product.Tel = 卖家联系方式 product.save() return redirect(‘主页’) except Exception as err: return render(redirect, ‘我要卖.html’, {‘错误’: ‘请填写完整信息!’})

Django在运行时出现Reverse for 'xxx' with no arguments not found.

本人刚学Django,这是一个临时程序,本来想实现通过url查找用户信息,并且在代码片段中添加了跳转链接 urls.py ``` from . import views from django.conf.urls import url, include urlpatterns = [ url(r'^$',views.index,name='index'), url(r'^(?P<name_id>\d+)/$',views.names,name='names'), ] ``` views.py ``` from django.shortcuts import render from .models import Name # Create your views here. def index(request): name = Name.objects.all() context = {'names':name} return render(request,'index.html',context) def names(request, name_id): name = Name.objects.get(id=name_id) context = {'name':name} return render(request,'names.html',context) ``` index.py ``` <p>INDEX</p> <!--这里想通过无序列表将用户名列出来--> <ul> {% for name in names %} <!--本来想在此处插入跳转链接的,但是出错--> <li><a href="{% url 'testing:names' %}">{{ name }}</a></li> {% empty %} <li>NOTHING HERE</li> {% endfor %} </ul> ``` 以上就是主要的代码 报错如下:

django怎样在两个VIEWS之间传递数据

``` from django.shortcuts import render from django.views.generic.base import View from datetime import datetime from django.http import HttpResponse from .models import Cschat from tools.cschat_aliyun import AliyunCschat from django.views.decorators.csrf import csrf_exempt import json,time class CschatView(View): def get(self,request): return render(request,'cschat.html') def post(self,request): content = request.POST.get("content","") result = AliyunCschat(content).hash_result() time.sleep(2) with open('aliyun.json','rb') as f: d = json.loads(f.read()) return render(request,'cschat_result.html',{ "contents":d }) class AliyunCallbackView(View): @csrf_exempt def post(self,request): postbody = request.body with open('aliyun.json','wb') as f: f.write(postbody) return HttpResponse(str(postbody)) def get(self,request): return render(request,'aliyun_callback.html',{ "text":"没有结果" }) ``` 应用场景:给阿里云的接口发送POST请求后 阿里云不会直接返回数据 而是把数据返回到另外一个接口(class AliyunCallbackView(View)这个对应的url),我需要在给阿里云发送POST请求后从另一个接口读取阿里云返回的POST数据。 代码中 ``` result = AliyunCschat(content).hash_result() ``` 这一行执行是给阿里云的接口发送POST请求 我现在的写法很有问题,因为没有好的解决办法。 我的做法是把AliyunCallbackView接收到的阿里云POST返回的数据写到aliyun.json这个文件里面,然后等待2秒钟后读取aliyun.json里面的内容,再把结果返回给前端。这样写的问题很多,如果AliyunCallbackView在一秒内接收到多个返回数据,那后面的执行内容就全变了。可以把阿里云POST返回的数据写入数据库,然后使用时间戳查询数据库返回对应的值。这种办法虽然可行但是感觉太麻烦了,请问有什么更好的解决办法?

django怎么使用ajax,为什么我老是报404,小白求赐教

这是views里面的代码, def get_signal(request): if request.method == 'POST': print(request.method) msg_ids = request.POST.get('ids') print(msg_ids) res = {'aa': ' aa', 'bb': 'bb'} return HttpResponse(json.dumps(res), content_type='application/json') 这是urls里面的代码 from django.contrib import admin from django.urls import path from bokehTestApp import views as view urlpatterns = [ path('admin/', admin.site.urls), path('getSignal', view.get_signal) ] 这里是html里面的代码 var data = {'ids': id_data} function getSignal() { if(id_data.length > 0){ $.ajax({ "url": '/getSignal/', type: "POST", data: data, datatype: "json", success: function (res) { alert(res.data) } }) } }

django刚入门,创建博客的时候出现这个错误,求解决

![图片说明](https://img-ask.csdn.net/upload/201904/01/1554112752_11759.png) ![图片说明](https://img-ask.csdn.net/upload/201904/01/1554112854_18340.png) 具体代码如下 html文件应该没错 views.py: from django.shortcuts import render # Create your views here. from django.template import loader,Context from django.http import HttpResponse from blog.models import BlogPost def archive(request): posts = BlogPost.objects.all(); #@UndefinedVariable t = loader.get_template('archive.html') c = Context({'posts': posts}) return HttpResponse(t.render(c)) models.py: from django.db import models from django.contrib import admin # Create your models here. class BlogPost(models.Model): title = models.CharField(max_length = 150) content = models.TextField() timestamp = models.DateTimeField() class BlogPostAdmin(admin.ModelAdmin): list_display = ('title', 'content', 'timestamp') admin.site.register(BlogPost, BlogPostAdmin) settings.py: TEMPLATE_DEBUG = True ALLOWED_HOSTS = [] # Application definition INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog' ) MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware', ) ROOT_URLCONF = 'wangxiran.urls' WSGI_APPLICATION = 'wangxiran.wsgi.application' # Database # https://docs.djangoproject.com/en/dev/ref/settings/#databases DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'wangxiran', 'USER':'root', 'PASSWORD':'Aa123456', 'HOST':'127.0.0.1', 'POST':'3306', } } # Internationalization # https://docs.djangoproject.com/en/dev/topics/i18n/ LANGUAGE_CODE = 'en-us' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = True USE_TZ = True # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/dev/howto/static-files/ STATIC_URL = '/static/' urls.py: from django.conf.urls import patterns, include, url from django.contrib import admin admin.autodiscover() from blog.views import archive urlpatterns = patterns('', # Examples: # url(r'^$', 'wangxiran.views.home', name='home'), # url(r'^blog/', include('blog.urls')), url(r'^admin/', include(admin.site.urls)), url(r'^blog/', archive), ) 照着网上教材做的 但是就是出不来啊 求大佬们帮帮

python 怎么获取request 中 body的内容

python 怎么获取request 请求中 body的内容? 谢谢 就是红框中的内容 ![图片说明](https://img-ask.csdn.net/upload/201905/10/1557479798_54096.png) 这是工具里模拟发送的,上图红框中的内容,是写在下面request body里的东西 ![图片说明](https://img-ask.csdn.net/upload/201905/10/1557479812_304027.png) 但是在python里模拟请求时,因为有ud的值是每次登陆时都变一次。 所以想怎么能在它本身发送request时把body里的内容保存下来。 这样就可以取出里面的ud值 使用 这样不知道我表述明白没。我也是在学习阶段。希望指教

报错出现MultiValueDictKeyError at /account/user 'userid'是什么问题呢?

Django开发用户模块,需要进行用户登录时区分不同角色,却出现了这样的问题**_MultiValueDictKeyError at /account/user 'userid'**_ 不知道是什么原因造成的,查了很多文章也没有解决当前的问题,希望得到大家的帮助 具体代码如下: models.py ``` from django.db import models # Create your models here. from django.contrib.auth.models import Group from django.contrib.auth.models import User class User2(models.Model): id = models.AutoField(primary_key=True) userid = models.CharField(max_length=20) password = models.CharField(max_length=15) status = models.CharField(max_length=15,null=True) def __str__(self): # 在Python3中使用 def __str__(self): return self.userid def __str__(self): # 在Python3中使用 def __str__(self): return self.password def __str__(self): # 在Python3中使用 def __str__(self): return self.status ``` login.html ``` <!DOCTYPE html> <html lang="en"> {% load static %} <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content=""> <meta name="author" content=""> <!-- CSS --> <link rel='stylesheet' href='http://fonts.googleapis.com/css?family=PT+Sans:400,700'> <link rel="stylesheet" href="{% static 'css/reset.css' %}"> <link rel="stylesheet" href="{% static 'css/supersized.css' %}"> <link rel="stylesheet" href="{% static 'css/style1.css' %}"> <script src="{% static 'js/jquery-1.8.2.min.js' %}"></script> <script src="{% static 'js/supersized.3.2.7.min.js' %}"></script> <script src="{% static 'js/supersized-init.js' %}"></script> <script src="{% static 'js1/scripts.js' %}"></script> </head> <body> <div class="page-container"> <h1 style="color: #0b0d0c">欢迎您登录</h1> <form method="POST" action="{% url 'account:user' %}" onsubmit="return eg.regCheck();"> {% csrf_token %} <div class="logGet"> <input type="text" placeholder="Username" id="userid" name="userid" autofocus /> <input type="password" placeholder="Password" id="userpwd" name="password"/> <button type="submit">登录</button> </div> </form> </div> <script> var eg = {}; eg.$ = function(id){ return document.getElementById(id); }; eg.regCheck = function(){ var uid = eg.$("userid"); var upwd = eg.$("userpwd"); if(uid.value ==''){ alert('账号不能为空!'); return false; } if(upwd.value ==''){ alert('密码不能为空!请输入密码!!!'); return false; } return true; }; </script> </body> </html> ``` views.py ``` def user(request): # try: Userid = request.POST['userid'] Password = request.POST['password'] request.session["name"] =Userid # context={} # context['userid']=userid # request.session['msg']=context print(Userid) print(Password) # return render(request, 'index.html', {}) user = User2.objects.filter(userid=Userid, password=Password) print(user) if user: for users in user: if users.status == 'C': return render(request, 'project/index.html', {}) if users.status == 'T': return render(request, 'book/book_detail.html', {'user': user}) else: return render(request, 'Work1-1.html', {'msg': '用户名或密码不正确'}) # except: # return render(request, 'login.html', {'msg': None}) def enroll(request): return render(request, 'enroll.html', {}) def test(request): #user_name = request.POST.get("userid", None) #user_password = request.POST.get("password", None) #status = request.POST.get("status",None) user_name = request.POST['user_name'] user_password = request.POST['user_password'] status = request.POST['status'] ## user_name=request.POST.get("userid",None) ## user_password=request.POST.get("password",None) from account.models import User2 from account import models User2.objects.create(userid=user_name, password=user_password, status=status) info_list = models.User2.objects.all() return render(request, 'login.html', {"info_list": info_list}) ``` 希望能得到帮助,着急!

django使用@login_required时出现重定向次数过多问题是怎么回事

报错如下: ![图片说明](https://img-ask.csdn.net/upload/201908/23/1566554722_363027.png) 目录如下: ![图片说明](https://img-ask.csdn.net/upload/201908/23/1566554300_221679.png) index的views.py: ![图片说明](https://img-ask.csdn.net/upload/201908/23/1566554666_927148.png) login的views.py: ``` from django.shortcuts import render, redirect from .forms import * # Create your views here. def login_views(request): if request.method == 'GET': # 获取请求源地址,如果没有的话则获取'/' url = request.META.get('HTTP_REFERER', '/') # print("请求源地址:"+url) # 判断session中是否有uid和uname if 'uid' in request.session and 'uname' in request.session: return redirect(url) else: # 判断cookie中是否有uid和uname, if 'uid' in request.COOKIES and 'uname' in request.COOKIES: # 如果有的话则取出来并保存进session,再回首页 uid = request.COOKIES['uid'] uname = request.COOKIES['uname'] request.session['uid'] = uid request.session['uname'] = uname return redirect(url) else: form = LoginForm() # 构建响应对象,并将url保存进cookies resp = render(request, 'login.html', locals()) resp.set_cookie('url', url) return resp else: # post请求 # 获取请求源地址 url = request.META.get('HTTP_REFERER', '/') # 接收uname和upwd判断是否登录成功 uname = request.POST['uname'] upwd = request.POST['upwd'] user_name = Users.objects.filter(uname=uname) users = Users.objects.filter(uname=uname, upwd=upwd) # 如果成功继续向下执行,否则回到登录页 if users: # 登录成功,将id和uname保存进session id = users[0].id request.session['uid'] = id request.session['uname'] = uname # 如果有记住密码则将数据保存进cookies # 先从cookies中将url的值获取出来 url = request.COOKIES.get('url', '/') resp = redirect(url) # 如果url存在于cookies中的话,则将url从cookies中删除出去 if 'url' in request.COOKIES: resp.delete_cookie('url') if 'isSave' in request.POST: expires = 60 * 60 * 24 * 365 resp.set_cookie('uid', id, expires) resp.set_cookie('uname', uname, expires) return resp else: # 登录失败,回到登录页面 message = '登录失败!' return redirect('/login/') ```

Django在本地window下测试没问题,上传到Ubuntu或者centos下报拒绝访问403错误,请问如何解决?谢谢!

1.本人刚开始学习Django,在Windows下参照教程和网络资料东拼西凑,写了一个连接内网服务器查询身份证号码信息的网页,在window7下python3.8,Django3.0.5运行正常。 2.由于Django部署需要Apache和uwsgi,需要Linux环境,就尝试部署到centos7,但是启动Django后报HTTP Error 403: Forbidden错误。 ``` python manage.py runserver 0.0.0.0:8000 ``` ``` setting.py中ALLOWED_HOSTS = ['*']或者服务器ip都不行 ``` 3.网上查了很久,参照了[Apache 部署 Django 项目过程记录与问题总结](https://blog.csdn.net/Ahri_J/article/details/71703030 ""),也关闭了防火墙,换了Ubuntu,同样是python3.8,Django3.0.5环境下,依然报同样的HTTP Error 403: Forbidden错误。参照[Python 3.x 中"HTTP Error 403: Forbidden"问题的解决方案](https://blog.csdn.net/eric_sunah/article/details/11301873 ""),也未解决问题。 求教高手,万分感谢! 报错图片: ![图片说明](https://img-ask.csdn.net/upload/202004/06/1586163086_341797.jpg) Traceback代码 ``` Environment: Request Method: POST Request URL: http://23.84.2.142:8000/search Django Version: 3.0.5 Python Version: 3.8.0 Installed Applications: ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles'] Installed Middleware: ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware'] Traceback (most recent call last): File "/home/mysite/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner response = get_response(request) File "/home/mysite/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response response = self.process_exception_by_middleware(e, request) File "/home/mysite/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/home/mysite/mysite/search.py", line 127, in result datas = get_GXPT(message) File "/home/mysite/mysite/search.py", line 82, in get_GXPT content_ryxx = urllib.request.urlopen(req1).read() File "/usr/lib/python3.8/urllib/request.py", line 222, in urlopen return opener.open(url, data, timeout) File "/usr/lib/python3.8/urllib/request.py", line 531, in open response = meth(req, response) File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response response = self.parent.error( File "/usr/lib/python3.8/urllib/request.py", line 569, in error return self._call_chain(*args) File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain result = func(*args) File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default raise HTTPError(req.full_url, code, msg, hdrs, fp) Exception Type: HTTPError at /search Exception Value: HTTP Error 403: Forbidden ``` ```

django 提交表单后 函数解析参数报错TypeError: not nonetype

这是views里的代码 ``` from django.http import HttpResponse from django.shortcuts import render from .models import Item # Create your views here. def get_html(req): return render(req,"item.html") def create_item(req): #解析参数 params = req.POST name = params.get("i_name") barcode = params.get("i_barcode") cate_id = int(params.get("cate_id")) #创建数据 item = Item.objects.create( name = name, barcode = barcode, category_id=cate_id ) return HttpResponse("创建成功啦{}".format(item.name)) ``` 这是models的代码 ``` from django.db import models # Create your models here. class Category(models.Model): name = models.CharField( max_length=30, verbose_name="分类名", db_column="cate_name" #改数据表字段的名字 ) cate_num = models.CharField( max_length=20, null=True, verbose_name="分类的编号" ) create_time = models.DateTimeField( auto_now_add=True, verbose_name="创建时间" ) update_time = models.DateTimeField( auto_now=True, verbose_name="修改时间" ) class Meta: # 改数据表的名字 db_table = "category" # PEP8 class Item(models.Model): name = models.CharField( max_length=40, verbose_name="商品名字" ) barcode = models.CharField( max_length=13, verbose_name="条码", null=True ) category = models.ForeignKey( Category, db_index=True ) ``` ![图片说明](https://img-ask.csdn.net/upload/201903/05/1551792138_370806.png)![图片说明](https://img-ask.csdn.net/upload/201903/05/1551792151_50008.png)

求助 关于Django ,AttributeError:'Topic' object has no attribute 'owner'

python编程入门到实践第十九章中的问题 浏览器报错信息如下 ![图片说明](https://img-ask.csdn.net/upload/201904/04/1554356911_216497.png) **关于我的views.py 的代码如下** ``` from django.shortcuts import render from django.http import HttpResponseRedirect, Http404 from django.urls import reverse from django.contrib.auth.decorators import login_required from .models import Topic, Entry from .forms import TopicForm, EntryForm # Create your views here. def index(request): ''' 学习笔记的主页 :return: ''' return render(request,'learning_logs/index.html') def topics(request): """Show all topics.""" topics = Topic.objects.order_by('date_added') context = {'topics': topics} return render(request, 'learning_logs/topics.html', context) @login_required def new_topic(request): '''添加新主题''' if request.method != 'POST': form = TopicForm() else: form = TopicForm(request.POST) if form.is_valid(): form.save() return HttpResponseRedirect(reverse('learning_logs:topics')) context = {'form':form} return render(request,'learning_logs/new_topic.html',context) def edit_entry(request, entry_id): """Edit an existing entry.""" entry = Entry.objects.get(id=entry_id) topic = entry.topic if topic.owner != request.user: raise Http404 if request.method != 'POST': # Initial request; pre-fill form with the current entry. form = EntryForm(instance=entry) else: # POST data submitted; process data. form = EntryForm(instance=entry, data=request.POST) if form.is_valid(): form.save() return HttpResponseRedirect(reverse('learning_logs:topic', args=[topic.id])) context = {'entry': entry, 'topic': topic, 'form': form} return render(request, 'learning_logs/edit_entry.html', context) def topic(request, topic_id): """Show a single topic, and all its entries.""" topic = Topic.objects.get(id = topic_id) # Make sure the topic belongs to the current user. if topic.owner != request.user: raise Http404 entries = topic.entry_set.order_by('-date_added') context = {'topic': topic, 'entries': entries} return render(request, 'learning_logs/topic.html', context) def new_entry(request, topic_id): """Add a new entry for a particular topic.""" topic = Topic.objects.get(id=topic_id) if topic.owner != request.user: raise Http404 if request.method != 'POST': # No data submitted; create a blank form. form = EntryForm() else: # POST data submitted; process data. form = EntryForm(data=request.POST) if form.is_valid(): new_entry = form.save(commit=False) new_entry.topic = topic new_entry.save() return HttpResponseRedirect(reverse('learning_logs:topic', args=[topic_id])) context = {'topic': topic, 'form': form} return render(request, 'learning_logs/new_entry.html', context) ```

django +jquery+ ajax get提交报错,post提交就可以

``` 模板:(index.html) “ <html> <body> <p>请输入两个数字</p> <form action="/index" method="get"> a: <input type="text" id="a" name="a"> <br> b: <input type="text" id="b" name="b"> <br> <p>result: <span id='result'></span></p> <button type="button" id='sum'>提交</button> </form> <!---<script type="text/javascript" src="/static/jquery-3.3.1.min.js"></script>---> <script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.min.js"></script> <script> $(document).ready(function(){ $("#sum").click(function(){ var a = $("#a").val(); var b = $("#b").val(); $.get("/index",{'a':a,'b':b}, function(ret){ $('#result').html(ret.result) }) }); }); </script> </body> </html>” ``` ``` **url 代码:** urlpatterns = [ url(r'testDb' , testDb), url(r'query' , Query), url(r'formdemo' , searchtest.search), url(r'^seachDemo' , searchtest.search_form), url(r'^index' , view.loginIndex), ] ``` ``` python 代码view.py: def loginIndex(request): if(request.method == 'GET'): a = int(request.GET.get('a')) b = int(request.GET.get('b')) return_json = {'result': a + b} return HttpResponse(json.dumps(return_json), content_type='application/json') return render(request,"index.html") ``` 报错: TypeError at /index int() argument must be a string, a bytes-like object or a number, not 'NoneType' Request Method: GET Request URL: http://127.0.0.1:8000/index Django Version: 2.0.3 Exception Type: TypeError Exception Value: int() argument must be a string, a bytes-like object or a number, not 'NoneType' Exception Location: D:\PythonDemo\PythonDemo\view.py in loginIndex, line 12 Python Executable: D:\PythonDemo\venv\Scripts\python.exe Python Version: 3.6.3 Python Path: ['D:\\PythonDemo', 'D:\\PythonDemo', 'D:\\PythonDemo\\venv\\Scripts\\python36.zip', 'X:\\python\\DLLs', 'X:\\python\\lib', 'X:\\python', 'D:\\PythonDemo\\venv', 'D:\\PythonDemo\\venv\\lib\\site-packages', 'D:\\PythonDemo\\venv\\lib\\site-packages\\setuptools-28.8.0-py3.6.egg', 'D:\\PythonDemo\\venv\\lib\\site-packages\\pip-9.0.1-py3.6.egg', 'X:\\PyCharm\\PyCharm 2017.3.4\\helpers\\pycharm_matplotlib_backend'] Server time: Sun, 18 Mar 2018 07:35:40 +0000 这个报错也让我很懵逼,我把提交方式,和ajax方法改成post,就没有这个报错,程序可以正常运行

Django csrftoken未设置

<div class="post-text" itemprop="text"> <p>I'm trying to using AJAX POST with Django as per the <a href="https://docs.djangoproject.com/en/dev/ref/csrf/#ajax" rel="nofollow noreferrer">docs</a> - this works fine if I'm logged in to the site. But if I'm logged out or using incognito, my csrftoken is not being set - I've tried putting <code>{{csrf_token}}</code> to check, which returns the value <code>NOTPROVIDED</code>.</p> <p>What could be causing the token not to generate? </p> <ul> <li>I'm using <code>render</code> so I don't think it's a <a href="https://stackoverflow.com/questions/13048228/django-csrf-token-was-used-in-a-template-but-the-context-did-not-provid">context processor issue</a></li> <li>The <code>django.middleware.csrf.CsrfViewMiddleware</code> is present, and I've not changed any default csrf settings</li> <li>The <a href="https://docs.djangoproject.com/en/dev/ref/csrf/#django.views.decorators.csrf.ensure_csrf_cookie" rel="nofollow noreferrer"><code>ensure_csrf_cookie</code></a> decorator works fine</li> </ul> <p>I'm running Django 1.7.</p> <p>Simplified version of the view (without the <code>ensure_csrf_cookie</code> decorator):</p> <pre><code>def pg2(request, **kwargs): name_slug = kwargs.pop('name_slug') num_guests = request.session['guests'] date = request.session['date'] venue = get_object_or_404(Venue, name_slug=name_slug) try: rental = request.session['rental'] except: rental = None filtered_items = Item.objects.filter(venue_id=venue.pk) context = {'venue':venue, 'rental':rental, 'filtered_items':filtered_items} return render(request, 'app/pg2.html', context) </code></pre> <p>My middleware in settings:</p> <pre><code>MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.common.BrokenLinkEmailsMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.contrib.redirects.middleware.RedirectFallbackMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'project.middleware.SecureRequiredMiddleware', # to add SSL ) </code></pre> </div>

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

实现简单的文件系统

实验内容: 通过对具体的文件存储空间的管理、文件的物理结构、目录结构和文件操作的实现,加深对文件系统内部功能和实现过程的理解。 要求: 1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个简

MIPS单周期CPU-组成原理实验-华中科技大学

使用logisim布线完成的MIPS单周期CPU,可支持28条指令。跑马灯的代码已经装入了寄存器,可以直接开启时钟运行。

2019数学建模A题高压油管的压力控制 省一论文即代码

2019数学建模A题高压油管的压力控制省一完整论文即详细C++和Matlab代码,希望对同学们有所帮助

基于QT和OpenCV的五子棋实现源码

一个简单的五子棋应用,基于QT和OpenCV的实现源码,通过相邻棋子判断是否获胜,不包含人工智能算法,适合新手入门

Git 实用技巧

这几年越来越多的开发团队使用了Git,掌握Git的使用已经越来越重要,已经是一个开发者必备的一项技能;但很多人在刚开始学习Git的时候会遇到很多疑问,比如之前使用过SVN的开发者想不通Git提交代码为什么需要先commit然后再去push,而不是一条命令一次性搞定; 更多的开发者对Git已经入门,不过在遇到一些代码冲突、需要恢复Git代码时候就不知所措,这个时候哪些对 Git掌握得比较好的少数人,就像团队中的神一样,在队友遇到 Git 相关的问题的时候用各种流利的操作来帮助队友于水火。 我去年刚加入新团队,发现一些同事对Git的常规操作没太大问题,但对Git的理解还是比较生疏,比如说分支和分支之间的关联关系、合并代码时候的冲突解决、提交代码前未拉取新代码导致冲突问题的处理等,我在协助处理这些问题的时候也记录各种问题的解决办法,希望整理后通过教程帮助到更多对Git操作进阶的开发者。 本期教程学习方法分为“掌握基础——稳步进阶——熟悉协作”三个层次。从掌握基础的 Git的推送和拉取开始,以案例进行演示,分析每一个步骤的操作方式和原理,从理解Git 工具的操作到学会代码存储结构、演示不同场景下Git遇到问题的不同处理方案。循序渐进让同学们掌握Git工具在团队协作中的整体协作流程。 在教程中会通过大量案例进行分析,案例会模拟在工作中遇到的问题,从最基础的代码提交和拉取、代码冲突解决、代码仓库的数据维护、Git服务端搭建等。为了让同学们容易理解,对Git简单易懂,文章中详细记录了详细的操作步骤,提供大量演示截图和解析。在教程的最后部分,会从提升团队整体效率的角度对Git工具进行讲解,包括规范操作、Gitlab的搭建、钩子事件的应用等。 为了让同学们可以利用碎片化时间来灵活学习,在教程文章中大程度降低了上下文的依赖,让大家可以在工作之余进行学习与实战,并同时掌握里面涉及的Git不常见操作的相关知识,理解Git工具在工作遇到的问题解决思路和方法,相信一定会对大家的前端技能进阶大有帮助。

实用主义学Python(小白也容易上手的Python实用案例)

原价169,限时立减100元! 系统掌握Python核心语法16点,轻松应对工作中80%以上的Python使用场景! 69元=72讲+源码+社群答疑+讲师社群分享会&nbsp; 【哪些人适合学习这门课程?】 1)大学生,平时只学习了Python理论,并未接触Python实战问题; 2)对Python实用技能掌握薄弱的人,自动化、爬虫、数据分析能让你快速提高工作效率; 3)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; 4)想修炼更好的编程内功,优秀的工程师肯定不能只会一门语言,Python语言功能强大、使用高效、简单易学。 【超实用技能】 从零开始 自动生成工作周报 职场升级 豆瓣电影数据爬取 实用案例 奥运冠军数据分析 自动化办公:通过Python自动化分析Excel数据并自动操作Word文档,最终获得一份基于Excel表格的数据分析报告。 豆瓣电影爬虫:通过Python自动爬取豆瓣电影信息并将电影图片保存到本地。 奥运会数据分析实战 简介:通过Python分析120年间奥运会的数据,从不同角度入手分析,从而得出一些有趣的结论。 【超人气老师】 二两 中国人工智能协会高级会员 生成对抗神经网络研究者 《深入浅出生成对抗网络:原理剖析与TensorFlow实现》一书作者 阿里云大学云学院导师 前大型游戏公司后端工程师 【超丰富实用案例】 0)图片背景去除案例 1)自动生成工作周报案例 2)豆瓣电影数据爬取案例 3)奥运会数据分析案例 4)自动处理邮件案例 5)github信息爬取/更新提醒案例 6)B站百大UP信息爬取与分析案例 7)构建自己的论文网站案例

深度学习原理+项目实战+算法详解+主流框架(套餐)

深度学习系列课程从深度学习基础知识点开始讲解一步步进入神经网络的世界再到卷积和递归神经网络,详解各大经典网络架构。实战部分选择当下最火爆深度学习框架PyTorch与Tensorflow/Keras,全程实战演示框架核心使用与建模方法。项目实战部分选择计算机视觉与自然语言处理领域经典项目,从零开始详解算法原理,debug模式逐行代码解读。适合准备就业和转行的同学们加入学习! 建议按照下列课程顺序来进行学习 (1)掌握深度学习必备经典网络架构 (2)深度框架实战方法 (3)计算机视觉与自然语言处理项目实战。(按照课程排列顺序即可)

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

Python界面版学生管理系统

前不久上传了一个控制台版本的学生管理系统,这个是Python界面版学生管理系统,这个是使用pycharm开发的一个有界面的学生管理系统,基本的增删改查,里面又演示视频和完整代码,有需要的伙伴可以自行下

Vue.js 2.0之全家桶系列视频课程

基于新的Vue.js 2.3版本, 目前新全的Vue.js教学视频,让你少走弯路,直达技术前沿! 1. 包含Vue.js全家桶(vue.js、vue-router、axios、vuex、vue-cli、webpack、ElementUI等) 2. 采用笔记+代码案例的形式讲解,通俗易懂

linux“开发工具三剑客”速成攻略

工欲善其事,必先利其器。Vim+Git+Makefile是Linux环境下嵌入式开发常用的工具。本专题主要面向初次接触Linux的新手,熟练掌握工作中常用的工具,在以后的学习和工作中提高效率。

JAVA初级工程师面试36问(完结)

第三十一问: 说一下线程中sleep()和wait()区别? 1 . sleep()是让正在执行的线程主动让出CPU,当时间到了,在回到自己的线程让程序运行。但是它并没有释放同步资源锁只是让出。 2.wait()是让当前线程暂时退让出同步资源锁,让其他线程来获取到这个同步资源在调用notify()方法,才会让其解除wait状态,再次参与抢资源。 3. sleep()方法可以在任何地方使用,而wait()只能在同步方法或同步块使用。 ...

java jdk 8 帮助文档 中文 文档 chm 谷歌翻译

JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷

我以为我对Mysql事务很熟,直到我遇到了阿里面试官

太惨了,面试又被吊打

智鼎(附答案).zip

并不是完整题库,但是有智鼎在线2019年9、10、11三个月的试题,有十七套以上题目,普通的网申行测题足以对付,可以在做题时自己总结一些规律,都不是很难

Visual Assist X 破解补丁

vs a's'sixt插件 支持vs2008-vs2019 亲测可以破解,希望可以帮助到大家

150讲轻松搞定Python网络爬虫

【为什么学爬虫?】 &nbsp; &nbsp; &nbsp; &nbsp;1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到! &nbsp; &nbsp; &nbsp; &nbsp;2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站 【课程设计】 一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是: 网络请求:模拟浏览器的行为从网上抓取数据。 数据解析:将请求下来的数据进行过滤,提取我们想要的数据。 数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是: 爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。 Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。 通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 &nbsp; 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求! 【课程服务】 专属付费社群+每周三讨论会+1v1答疑

JavaWEB商城项目(包括数据库)

功能描述:包括用户的登录注册,以及个人资料的修改.商品的分类展示,详情,加入购物车,生成订单,到银行支付等!另外还有收货地址的和我的收藏等常用操作.环境(JDK 1.7 ,mysql 5.5,Ecli

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

一学即懂的计算机视觉(第一季)

图像处理和计算机视觉的课程大家已经看过很多,但总有“听不透”,“用不了”的感觉。课程致力于创建人人都能听的懂的计算机视觉,通过生动、细腻的讲解配合实战演练,让学生真正学懂、用会。 【超实用课程内容】 课程内容分为三篇,包括视觉系统构成,图像处理基础,特征提取与描述,运动跟踪,位姿估计,三维重构等内容。课程理论与实战结合,注重教学内容的可视化和工程实践,为人工智能视觉研发及算法工程师等相关高薪职位就业打下坚实基础。 【课程如何观看?】 PC端:https://edu.csdn.net/course/detail/26281 移动端:CSDN 学院APP(注意不是CSDN APP哦) 本课程为录播课,课程2年有效观看时长,但是大家可以抓紧时间学习后一起讨论哦~ 【学员专享增值服务】 源码开放 课件、课程案例代码完全开放给你,你可以根据所学知识,自行修改、优化 下载方式:电脑登录https://edu.csdn.net/course/detail/26281,点击右下方课程资料、代码、课件等打包下载

软件测试2小时入门

本课程内容系统、全面、简洁、通俗易懂,通过2个多小时的介绍,让大家对软件测试有个系统的理解和认识,具备基本的软件测试理论基础。 主要内容分为5个部分: 1 软件测试概述,了解测试是什么、测试的对象、原则、流程、方法、模型;&nbsp; 2.常用的黑盒测试用例设计方法及示例演示;&nbsp; 3 常用白盒测试用例设计方法及示例演示;&nbsp; 4.自动化测试优缺点、使用范围及示例‘;&nbsp; 5.测试经验谈。

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

课程主要面向嵌入式Linux初学者、工程师、学生 主要从一下几方面进行讲解: 1.linux学习路线、基本命令、高级命令 2.shell、vi及vim入门讲解 3.软件安装下载、NFS、Samba、FTP等服务器配置及使用

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

快速入门Android开发 视频 教程 android studio

这是一门快速入门Android开发课程,顾名思义是让大家能快速入门Android开发。 学完能让你学会如下知识点: Android的发展历程 搭建Java开发环境 搭建Android开发环境 Android Studio基础使用方法 Android Studio创建项目 项目运行到模拟器 项目运行到真实手机 Android中常用控件 排查开发中的错误 Android中请求网络 常用Android开发命令 快速入门Gradle构建系统 项目实战:看美图 常用Android Studio使用技巧 项目签名打包 如何上架市场

机器学习初学者必会的案例精讲

通过六个实际的编码项目,带领同学入门人工智能。这些项目涉及机器学习(回归,分类,聚类),深度学习(神经网络),底层数学算法,Weka数据挖掘,利用Git开源项目实战等。

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

相关热词 c#分级显示数据 c# 不区分大小写替换 c#中调用就java c#正则表达式 验证小数 c# vscode 配置 c#三维数组能存多少数据 c# 新建excel c#多个文本框 c#怎么创建tcp通讯 c# mvc 电子病例
立即提问