python - Django 模型有一个意外的关键参数
问题描述
我想将爬取数据保存到数据库中,但它有意外的关键字参数错误。
reviewData() got an unexpected keyword argument 'reviewText'
crawling.py的某些部分
for j in range(review_cnt):
if soup.select_one(f'li:nth-child({j+1}) > div._1Z_GL > div.PVBo8 > a > span') != None:
if(len(soup.select(f'li:nth-child({j+1}) > div._1Z_GL > div.PVBo8 > a > span'))) == 2:
driver.find_element_by_css_selector(f'li:nth-child({j+1}) > div._1Z_GL > div.PVBo8 > a').send_keys(Keys.ENTER)
current_page = driver.page_source
soup = BeautifulSoup(current_page, 'html.parser')
time.sleep(1)
review_text = soup.select_one(f'li:nth-child({j+1}) > div._1Z_GL > div.PVBo8 > a > span').text.strip() #텍스트 추출
star_rate = soup.select_one(f'li:nth-child({j+1}) > div._1Z_GL > div._1ZcDn > div._3D_HC > span._2tObC').text
review_data.append((place_name, review_text, star_rate))
review_obj = {
'place' : place_name,
'review' : review_text,
'rate' : star_rate
}
review_dict.append(review_obj)
for item in review_dict:
reviewData(placeName = item['place'], reviewText = item['review'], starRate = item['rate']).save() #this line has error
模型.py
from django.db import models
# Create your models here.
class reviewData(models.Model):
placeName = models.CharField(max_length=50)
reviewText = models.TextField
starRate = models.FloatField
我不知道在哪里修复。我应该添加更多内容吗?
解决方案
也许是因为你忘记了括号
from django.db import models
# Create your models here.
class reviewData(models.Model):
placeName = models.CharField(max_length=50)
reviewText = models.TextField()
starRate = models.FloatField()
推荐阅读
- javascript - 无法在 jQuery 中传递带有其他参数的 formData
- java - 如何将自定义对象从一个 Activity 传递到 Android 中的另一个 Activity?
- excel - 比较 Excel 的 2 列,包括重复项
- python - 在返回 HTTP 请求时按计划处理后台任务
- javascript - 如何让动态导入在 webpack 4 中工作
- testing - 使用带有 actix-web 的工作 POST 路由的测试超时
- tensorflow - 是否有 tensorflow resource_variable 的文档?
- c# - C# 自定义变量
- react-native - detect active keyboard language on text input - react native
- python - 迭代 Python 2D 数组分组列数据以获得总计