我编写了一个动态数据库驱动、面向对象的网站,带有管理前端等。我想添加一个功能,客户可以将项目保存为“收藏夹”,而无需创建帐户和登录,以便稍后返回它们,但我不知道到底该怎么做......我看到三个选项:
选项 1 的问题是我对 IP 地址了解不多 - 我爸爸认为它们是独一无二的,但我知道人们在使用此类系统时遇到过问题。
1和2的问题是账户还没有向客户开放——目前只有管理员可以登录。改变它应该很容易(不超过上午或下午的工作),但我也必须实现用户组。
选项 3 的问题是,如果用户 A 保存了一个名为“我的收藏夹”的收藏夹列表,然后用户 B 尝试以该名称保存列表但遭到拒绝,则用户 B 将能够访问用户保存的列表A 因为他们现在知道它已经存在。解决此问题的一个解决方案是使用密码保护列表,但要付出所有这些努力,我也可以实施选项 2。
当然我总是可以使用选项 4;如果有人可以提出比上述任何选项更好的解决方案,请使用替代方案。
那么以前有人做过这样的事情吗?如果是这样,你是怎么做的?您推荐(或不推荐)什么?
我使用以下代码从亚马逊列表中提取我需要的 HTML:
import requests
from bs4 import BeautifulSoup
r=requests.get("http://www.amazon.com/dp/B0007RXSB4")
soup=BeautifulSoup(r.content)
soup.find_all("div", {"id":"imgTagWrapperId"})
Run Code Online (Sandbox Code Playgroud)
这给了我这个:
[<div class="imgTagWrapper" id="imgTagWrapperId">\n<img alt="Johnston
& Murphy Men's Greenwich Oxford,Black,6 D" class="a-dynamic-image
a-stretch-vertical" data-a-dynamic-image='{"http://ecx.images-
amazon.com/images/I/81zwayZox-S._UY695_.jpg":
[695,695],"http://ecx.images-amazon.com/images/I/81zwayZox-
S._UY535_.jpg":[535,535],"http://ecx.images-
amazon.com/images/I/81zwayZox-S._UY500_.jpg":
[500,500],"http://ecx.images-amazon.com/images/I/81zwayZox-
S._UY575_.jpg":[575,575],"http://ecx.images-
amazon.com/images/I/81zwayZox-S._UY395_.jpg":
[395,395],"http://ecx.images-amazon.com/images/I/81zwayZox-
S._UY585_.jpg":[585,585]}' data-old-hires="http://ecx.images-
amazon.com/images/I/81zwayZox-S._UL1500_.jpg" id="landingImage"
onload="this.onload='';setCSMReq('af');if(typeof addlongPoleTag ===
'function'){ addlongPoleTag('af','desktop-image-atf-
marker');};setCSMReq('cf')" src="http://ecx.images-
amazon.com/images/I/41KixMIlPNL._SY395_QL70_.jpg" style="max-
width:695px;max-height:695px;">\n</img></div>]
Run Code Online (Sandbox Code Playgroud)
我只需要知道如何提取
http://ecx.images-amazon.com/images/I/81zwayZox-S._UY695_.jpg
从上面的代码。
我正在尝试编写一个脚本,该脚本将从我们的监控工具中提取当前状态并在 MS SQL DB 中更新它们。当我调用 API 时,我得到了一个 JSON 格式的巨大响应:
{
"hoststatuslist": {
"recordcount": "1084",
"hoststatus": [
{
"@attributes": {
"id": "XXXX"
},
"host_id": "XXX",
"name": "XXXXX",
"display_name": "XXXXXXX",
"address": "XXXXXX",
"alias": "XXXXXX",
"status_text": "XXXXXXXXXXXXXXXXXXXXXXX",
etc.
},
{
"@attributes": {
"id": "XXXX"
},
"host_id": "XXX",
"name": "XXXXX",
"display_name": "XXXXXXX",
"address": "XXXXXX",
"alias": "XXXXXX",
"status_text": "XXXXXXXXXXXXXXXXXXXXXXX",
etc.
},
etc.
]
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我获得了 1000 多个具有属性的主机对象。我想解析响应,以便我可以添加/更新 MS SQL DB。我试图解析出HOST_ID,名称和STATUS_TEXT为每台主机。
我试图做这样的事情Python - 解析 JSON 数据集,但我不断收到响应对象没有属性读取或解码的错误。
这是我当前的代码: …
我用谷歌搜索了一下,我发现变更集执行的顺序取决于它们在放置的文件中的顺序。
以下是同一文件中的变更集列表:
<changeSet id="A" author="abc">
</changeset>
<changeSet id="B" author="abc">
</changeset>
Run Code Online (Sandbox Code Playgroud)
执行顺序是根据id还是根据放置顺序决定的?另外,如果<changeSet>它们在不同的文件中,执行顺序是什么?
我需要在Angular 8的项目中创建一个组件,我尝试了以下命令:
ng g c prueba
Run Code Online (Sandbox Code Playgroud)
但它返回错误为:
检测到无效的格式版本-预期:[1]找到:[3]
你能帮我解决吗?
我正在尝试将 HTML 文件写入 Google Cloud Storage,而不将文件保存在我的节点应用程序中。我需要创建一个文件并立即上传到云存储。我尝试使用fs.writeFileSync()方法,但它在我的应用程序中创建了文件,我不想要那样。
const res = fs.writeFileSync("submission.html", fileData, "utf8");
GCS.upload(res, filePath);
Run Code Online (Sandbox Code Playgroud)
我希望直接在云存储中保存一个 HTML 文件。你能向我推荐正确的方法吗?
我试图弄清楚如何Promise工作并使一个 CSS 动画一个接一个地运行。但是它们同时运行......
let move_boxes = () => {
return new Promise( (resolve, reject) => {
resolve ('boxes moved!')
})
};
let move_box_one = () => {
return new Promise( (resolve, reject) => {
resolve (document.getElementById('div_two').style.animation = 'move 3s forwards')
console.log('box one moved!')
})
}
let move_box_two = () => {
return new Promise( (resolve, reject) => {
resolve (document.getElementById('div_one').style.animation = 'move 3s forwards')
console.log('box two moved!')
})
}
move_boxes().then(() => {
return move_box_one();
}).then(() => { …Run Code Online (Sandbox Code Playgroud) 我有一个返回数据的 API,如下所示:
[
{
"attributes": {
"type": "AggregateResult"
},
"expr0": 25937961.52,
"expr1": 1,
"expr2": 2020
},
{
"attributes": {
"type": "AggregateResult"
},
"expr0": 4092447.85,
"expr1": 3,
"expr2": 2020
},
{
"attributes": {
"type": "AggregateResult"
},
"expr0": 18509414.84,
"expr1": 6,
"expr2": 2019
},
{
"attributes": {
"type": "AggregateResult"
},
"expr0": 13572118.12,
"expr1": 10,
"expr2": 2019
},
...
Run Code Online (Sandbox Code Playgroud)
其中expr0是货币值,expr1是月份,expr2是年份。我在 React 中使用 ApexCharts 在我的网站上显示结果,但是我似乎无法正确格式化数据。我的组件如下所示,但它目前仅显示一个点。我不确定数据点是否需要显示 x/y 键,或者日期是否需要位于选项的 x 轴中。
class SFAllTimeQuoteValue extends Component {
constructor(props) {
super(props);
this.state …Run Code Online (Sandbox Code Playgroud) 我的代码环境是Angular 9,在设置reactive form的时候,遇到了这个错误:
错误 NG8002:无法绑定到“formGroup”,因为它不是“form”的已知属性。
我在 Google 和 StackOverflow 上做了一些研究,但找不到与使用 Angular 9 相同的问题,但是,根据其他帖子的建议,我确实将 ReactiveFormsModule 导入 app.module.ts、routing.module.ts 和 recipe-编辑.component.spec.ts 文件。但是,错误不断弹出。我附上了我的代码,有人可以给我建议吗?
app.module.ts
import { RecipeService } from './recipes/recipe.service';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule} from '@angular/forms';
import { RoutingModule } from './routing.module';
import { ShoppingListService } from './shopping-list/shopping-list.service';
import { AppComponent } from './app.component';
import { RecipesComponent } from './recipes/recipes.component';
import { RecipeListComponent } from './recipes/recipe-list/recipe-list.component';
import { RecipeItemComponent } from './recipes/recipe-list/recipe-item/recipe-item.component'; …Run Code Online (Sandbox Code Playgroud) 我有一个小脚本来从列表中获取随机样本,但是我希望每当运行此脚本时始终获得相同的列表。我该怎么做?
我的代码当前如下,但是每次运行脚本时,我都会得到不同的示例。
import random
def SampleWithoutRepetition(population, sampleSize):
random.seed(100)
result = random.sample(set(
map(lambda attribute: attribute, population)), sampleSize)
print(f"result: {result}")
population = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
SampleWithoutRepetition(population, 4)
Run Code Online (Sandbox Code Playgroud) javascript ×4
python ×3
.net ×1
angular ×1
angular7 ×1
angular8 ×1
apexcharts ×1
api ×1
asp.net ×1
components ×1
database ×1
ecmascript-6 ×1
es6-promise ×1
favorites ×1
html ×1
ip-address ×1
json ×1
liquibase ×1
node.js ×1
parsing ×1
python-3.x ×1
random ×1
reactjs ×1
sql ×1
sql-server ×1
typescript ×1
vb.net ×1