使用 puppeteer 更改 IP 地址似乎不起作用。我错过了什么吗?
Change IP adress with pupperteer doesn't seems to work. Am I missing something?
我目前正在尝试使用 node 和 puppeteer headless chrome 进行网络抓取。我使用一个投票网站,在那里你只能投票 1 次/小时,而我正在尝试投票更多(例如 10 次/小时)。为此,我使用不同的 IP 地址和不同的用户代理。
但是,问题是,当我切换 IP 时它似乎不起作用(我不能再投票)并且当我检查我的 IP 时(在某些网站上,如 https://ipcost.com/),我看到了我的真实 IP 地址。
这是我用来实现此目的的代码:
const chromeOptions = {
headless:false,
defaultViewport: null,
args: [
'--disable-features=IsolateOrigins,site-per-process',
'--flag-switches-begin --disable-site-isolation-trials --flag-switches-end',
'--disable-features=UserAgentClientHint',
`--proxy-server=http=user::passwordx@ip:port`
]
(async() => {
const browser = await puppeteer.launch(chromeOptions);
....
})()
};
这是我第一次从事网络抓取工作,我也是这样使用代理的。
我找不到我的问题的任何答案,我想我遗漏了什么或者我做错了什么。
在此先感谢您的帮助
好的,我得到了答案。
实际上 pupperteer 不管理身份验证代理请求
所以我改
`--proxy-server=http=user::passwordx@ip:port`
来自
`--proxy-server=http://ip:port`
并添加
await page.authenticate({
username: 'username',
password: 'password'
})
我目前正在尝试使用 node 和 puppeteer headless chrome 进行网络抓取。我使用一个投票网站,在那里你只能投票 1 次/小时,而我正在尝试投票更多(例如 10 次/小时)。为此,我使用不同的 IP 地址和不同的用户代理。 但是,问题是,当我切换 IP 时它似乎不起作用(我不能再投票)并且当我检查我的 IP 时(在某些网站上,如 https://ipcost.com/),我看到了我的真实 IP 地址。
这是我用来实现此目的的代码:
const chromeOptions = {
headless:false,
defaultViewport: null,
args: [
'--disable-features=IsolateOrigins,site-per-process',
'--flag-switches-begin --disable-site-isolation-trials --flag-switches-end',
'--disable-features=UserAgentClientHint',
`--proxy-server=http=user::passwordx@ip:port`
]
(async() => {
const browser = await puppeteer.launch(chromeOptions);
....
})()
};
这是我第一次从事网络抓取工作,我也是这样使用代理的。 我找不到我的问题的任何答案,我想我遗漏了什么或者我做错了什么。
在此先感谢您的帮助
好的,我得到了答案。 实际上 pupperteer 不管理身份验证代理请求 所以我改
`--proxy-server=http=user::passwordx@ip:port`
来自
`--proxy-server=http://ip:port`
并添加
await page.authenticate({
username: 'username',
password: 'password'
})