[英]Node.js Scrape datetime from a DOM
我有一個簡單的問題。
我有這個HTML代碼
<time datetime="2014-02-18"> 18 February 2014</time>
我如何以“ 2014-02-18”格式抓取日期時間?
我試過了
var date = $('time').value;
要么
var date = $('time').dateTime;
但是兩者都在控制台上返回undefined。
謝謝!
(我假設您在Node或cheerio或類似版本中使用jQuery。)
您可以通過attr
獲取字符串:
var dateString = $('time').attr('datetime');
然后以您喜歡的方式將其轉換為日期,並確保允許正確的時區。 例如,您可以
var date = new Date(dateString);
...首先檢查了您的Node版本中的V8版本后會執行此操作,因為不幸的是,該規范困擾於它:
"2014-02-18"
將是UTC,但是: "2014-02-18"
將被解釋為當地時間,但是: "2014-02-18"
將再次為UTC 因此,只要確定您知道使用V8的副本,或者使用new Date(year, month, day)
(用於本地時間)或new Date(Date.UTC(year, month day))
(對於UTC)自行處理。
時間不是值字段,因此.value將不起作用。
在javascript中,您可以使用,
document.getElementsByTagName("time")[0].getAttribute("datetime");
如果您使用的是JQuery,則可以使用,
$('time').attr('datetime')
datetime基本上是時間字段的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.