在 python 和 nodejs 中请求 nasdaq.com
requesting nasdaq.com in python and nodejs
我在 nasdaq.com 的获取请求中遇到了以下问题。
我想用 nodejs 抓取一些数据,但即使在尝试各种配置数小时后,我得到的仍然是 'ECONNRESET'。
另一方面,使用 python 时,它就像一个魅力。
现在,我已经编写了一个解决方法,使用 python-shell 和 python 从节点获取数据。
const request = require('request')
const options = {
url: 'https://www.nasdaq.com/',
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 Firefox/2.0.0.11',
'Accept-Encoding': '',
'Allow': '/'
},
}
request(options, (err, res, body) => {
console.log(err)
console.log(res.statusCode)
})
结果
{ Error: read ECONNRESET
at TLSWrap.onread (net.js:660:25) errno: 'ECONNRESET', code: 'ECONNRESET', syscall: 'read' }
和
from requests import get, Response
res: Response = get('https://www.nasdaq.com/')
print(res.status_code)
结果
200
这仅在请求 nasdaq.com 时发生。对于所有其他网站,节点获取按预期工作。
节点请求我做错了什么?
使用superagent
模块。它对我有用。
const request = require('superagent')
request.get('www.nasdaq.com', (err, res, body) => {
console.log(err)
console.log(res.statusCode)
});
我在 nasdaq.com 的获取请求中遇到了以下问题。
我想用 nodejs 抓取一些数据,但即使在尝试各种配置数小时后,我得到的仍然是 'ECONNRESET'。 另一方面,使用 python 时,它就像一个魅力。 现在,我已经编写了一个解决方法,使用 python-shell 和 python 从节点获取数据。
const request = require('request')
const options = {
url: 'https://www.nasdaq.com/',
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 Firefox/2.0.0.11',
'Accept-Encoding': '',
'Allow': '/'
},
}
request(options, (err, res, body) => {
console.log(err)
console.log(res.statusCode)
})
结果
{ Error: read ECONNRESET
at TLSWrap.onread (net.js:660:25) errno: 'ECONNRESET', code: 'ECONNRESET', syscall: 'read' }
和
from requests import get, Response
res: Response = get('https://www.nasdaq.com/')
print(res.status_code)
结果
200
这仅在请求 nasdaq.com 时发生。对于所有其他网站,节点获取按预期工作。
节点请求我做错了什么?
使用superagent
模块。它对我有用。
const request = require('superagent')
request.get('www.nasdaq.com', (err, res, body) => {
console.log(err)
console.log(res.statusCode)
});