我想知道是否有任何类似于PhantomJS的Java库.我想要实现的是能够模拟表单登录并从网页提交动作,以及也可以进行页面抓取.我知道jsoup可以进行页面抓取而不是页面自动化.
提前致谢!
干杯,亚历克斯
我已将多个版本的Web应用程序部署到Google App Engine.在新的Google App Engine仪表板上,我无法找到将版本设置为应用程序默认版本的位置.旧的GAE控制台允许我们单击"设为默认"按钮,但它会从新的仪表板中消失.
我有一个df超过数亿行的数据。
latitude longitude time VAL
0 -39.20000076293945312500 140.80000305175781250000 1972-01-19 13:00:00 1.20000004768371582031
1 -39.20000076293945312500 140.80000305175781250000 1972-01-20 13:00:00 0.89999997615814208984
2 -39.20000076293945312500 140.80000305175781250000 1972-01-21 13:00:00 1.50000000000000000000
3 -39.20000076293945312500 140.80000305175781250000 1972-01-22 13:00:00 1.60000002384185791016
4 -39.20000076293945312500 140.80000305175781250000 1972-01-23 13:00:00 1.20000004768371582031
... ...
Run Code Online (Sandbox Code Playgroud)
它包含一个time类型为datetime64UTC的列。下面的代码是创建一个新列isInDST来指示time本地时区是否处于夏令时。
df['isInDST'] = pd.DatetimeIndex(df['time']).tz_localize('UTC').tz_convert('Australia/Victoria').map(lambda x : x.dst().total_seconds()!=0)
Run Code Online (Sandbox Code Playgroud)
处理 15,223,160 行大约需要 400 秒。
有没有更好的方法以更好的性能实现这一目标?是vectorize一个更好的办法?
我创建了一个包含以下列的表:ObservationId,FirstCreatedDate,description,......和SQL Server 2008 R2中的LastUpdatedDate.该ObservationId是1与增量的身份.
我需要创建两个触发器,一个用于INSERT,另一个用于UPDATE.在插入新记录时,INSERT触发器将通过获取当前日期时间来更新FirstCreatedDate列; 在更新现有记录时,UPDATE触发器将通过获取当前日期时间来更新LastUpdatedDate colunm.
我没有这样做,因为我猜测识别可能是问题所在.
有人能帮我一把吗?谢谢!
干杯,亚历克斯
ALTER TRIGGER [dbo].[T_InsertNewObservation] ON [dbo].[GCUR_OBSERVATION]
AFTER INSERT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for trigger here
UPDATE GCUR_OBSERVATION SET GCUR_OBSERVATION.FirstCreatedDate = getdate()
FROM GCUR_OBSERVATION a INNER JOIN INSERTED ins ON a.ObservationId = ins.ObservationId
END
Run Code Online (Sandbox Code Playgroud) 我是ASP.NET MVC 4和Web API的新手.
我想要实现的是创建一个CRUD Web应用程序,它能够在一个简单的现有SQL Server 2008数据库中操作数据表.
我想到了带有Web API和实体框架的新MVC 4.有许多关于代码第一数据访问模式的示例和示例,但很少有关于数据库的示例和示例.
任何人都可以帮助任何简单的想法如何实现这一点与数据库优先和实体框架和存储库模式,请?
我有一个巨大的文本文件(大约500 MB),以制表符分隔.它不包含标题.所以它看起来像:
20140711 IBM 29.9068 tom.smith@ibm.com this is interesting
20140712 HP 2.3000 tom.smith@ibm.com this is interesting
20140713 GOOGLE 44.9033 tom.smith@ibm.com this is interesting
20140714 HTC 739.70 tom.smith@ibm.com this is interesting
20140715 SAMSUNG 8.442 tom.smith@ibm.com this is interesting
20140716 MICROSOFT 67.104 tom.smith@ibm.com this is interesting
20140717 DELL 5.0823 tom.smith@ibm.com this is interesting
...
...
...
Run Code Online (Sandbox Code Playgroud)
我需要使用Powershell将文本作为表加载到SQL Server数据库中.由于文本文件中没有标头,因此"Import-Csv"cmdlet会错误地输出内容.我认为它总是将第一行视为标题.
"Import-Csv"如何在文本文件中输出任何内容并忘记头配置?
谢谢.
在我的 Express JS Web 应用程序中,login路由将一些变量呈现给登录 pug 视图。
在 login.js
router.get('/login', function(req, res, next) {
var locations = ["Location 1", "Location 2"];
var count = 0;
var title = 'Login';
console.log("req.originalUrl=" + req.originalUrl);
res.render('login', {
title: title, // Give a title to our page
jsonData: locations, // Pass data to the View
count: locations.length,
originalUrl: req.originalUrl
});
});
Run Code Online (Sandbox Code Playgroud)
在 login.pug
extends layout
block content
div(class='container mt-3')
h2 Welcome to #{title}, #{count}, #{originalUrl}
a(class="btn btn-primary" href="/location/new" role="button") NEW
br
br …Run Code Online (Sandbox Code Playgroud) 我有一年多地理范围内每小时的 netCDF 气候数据,例如从2017-01-01T00:00:00到2017-12-31T23:00:00。
<xarray.Dataset>
Dimensions: (latitude: 106, longitude: 193, time: 8760)
Coordinates:
* latitude (latitude) float32 -39.2 -39.149525 ... -33.950478 -33.9
* longitude (longitude) float32 140.8 140.84792 140.89584 ... 149.95209 150.0
* time (time) datetime64[ns] 2017-01-01 ... 2017-12-31T23:00:00
Data variables:
T_SFC (time, latitude, longitude) float32 dask.array<shape=(8760, 106, 193), chunksize=(744, 106, 193)>
Attributes:
creationTime: 1525708833
creationTimeString: Mon May 7 09:00:32 PDT 2018
Conventions: COARDS
Run Code Online (Sandbox Code Playgroud)
正如它所说,数据具有三个坐标(纬度、经度和时间)和一个变量是每小时温度。
我的代码:
import xarray as xr
mds_temp_path = '../Archive/*/IDV71000_VIC_T_SFC.nc' # netCDF
mds_temp = …Run Code Online (Sandbox Code Playgroud) 我有一个 xarray DataArray 对象,da_criteria_daily是从 netCDF 文件生成的。
<xarray.DataArray (time: 365, latitude: 106, longitude: 193)>
dask.array<shape=(365, 106, 193), dtype=bool, chunksize=(1, 106, 193)>
Coordinates:
* time (time) datetime64[ns] 2017-01-01 2017-01-02 ... 2017-12-31
* latitude (latitude) float32 -39.2 -39.149525 ... -33.950478 -33.9
* longitude (longitude) float32 140.8 140.84792 140.89584 ... 149.95209 150.0
Run Code Online (Sandbox Code Playgroud)
这是一个地理范围内一年多的每日数据。该变量是布尔类型。
我想获取变量为 True 的特定日期的所有坐标(纬度、经度)值。
new_da = da_criteria_daily.where(da_criteria_daily==True, drop=True)
print(new_da)
Run Code Online (Sandbox Code Playgroud)
我有:
<xarray.DataArray (time: 161, latitude: 106, longitude: 193)>
dask.array<shape=(161, 106, 193), dtype=float64, chunksize=(1, 106, 193)>
Coordinates:
* time (time) datetime64[ns] 2017-01-01 …Run Code Online (Sandbox Code Playgroud) 在我的api路由器中,有一个名为的函数generatePDF,旨在使用 PDFKit 模块在内存中生成 PDF 文件并发送到客户端进行下载,而不是仅显示。
在api.js:
var express = require('express');
var router = express.Router();
const PDFDocument = require('pdfkit');
router.get('/generatePDF', async function(req, res, next) {
var myDoc = new PDFDocument({bufferPages: true});
myDoc.pipe(res);
myDoc.font('Times-Roman')
.fontSize(12)
.text(`this is a test text`);
myDoc.end();
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-disposition': 'attachment;filename=test.pdf',
'Content-Length': 1111
});
res.send( myDoc.toString('base64'));
});
module.exports = router;
Run Code Online (Sandbox Code Playgroud)
这不起作用。错误信息是(node:11444) UnhandledPromiseRejectionWarning: Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client。
我怎样才能解决问题并让它发挥作用?
另外,一个相关的问题是如何将 PDF 生成的业务逻辑与路由器分开并将它们链接起来?
pandas ×3
python ×3
express ×2
javascript ×2
netcdf ×2
node.js ×2
asp.net ×1
asp.net-mvc ×1
crud ×1
java ×1
node-pdfkit ×1
numpy ×1
powershell ×1
pug ×1
sql-server ×1
web-scraping ×1