0

我正在尝试编写一个 chrome 扩展程序来控制用于股票交易的 chrome 浏览器,例如提交表单、从网站上抓取数据。我想让扩展程序也能够登录网站并抓取数据。

非常感谢任何建议!

4

1 回答 1

0

您必须使用带有 Javascript 的内容脚本。要登录,您可以执行以下操作:

usernameInput.value = "username"
passwordInput.value = "password"
loginButton.click()

对于检查股票是否买入的逻辑,您必须使用类似于以下代码的代码(假设您将股票价格作为数组获取):

var stockPrices = [200.4, 201.4]

var isBuy = true;
for (var i = 0; i < stockPrices.length; i++) {
  if (i != 0) {
    if (stockPrices[i] > stockPrices[i - 1]) {
      isBuy = false
    } else {
      isBuy = true
    }
  }
}

console.log(isBuy)

下面是一些获取微软收盘价的代码(更改getJSON()函数 URL 中的股票代码):

var getJSON = function(url, callback) {
  var xhr = new XMLHttpRequest();
  xhr.open('GET', url, true);
  xhr.responseType = 'json';
  xhr.onload = function() {
    var status = xhr.status;
    if (status === 200) {
      callback(null, xhr.response);
    } else {
      callback(status, xhr.response);
    }
  };
  xhr.send();
};

Object.size = function(obj) {
    var size = 0, key;
    for (key in obj) {
        if (obj.hasOwnProperty(key)) size++;
    }
    return size;
};

var stockPrices = []

getJSON('https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=MSFT&apikey=demo',
  function(err, data) {
    if (err != null) {
      console.log('Something went wrong: ' + err);
    } else {
            for (var i = 0; i < Object.size(data["Time Series (Daily)"]); i++) {
                var x = data["Time Series (Daily)"][Object.keys(data["Time Series (Daily)"])[i]]
                stockPrices.push(x["4. close"])
            }
    }
    
    console.log(stockPrices)
  })

于 2020-06-16T17:14:08.050 回答