求助selenium爬取网页时空白,应该用哪种方法解决?
我放弃了使用urllib3和bs4进行网页爬取,爬取下来的数据都是这种乱码<script type="text/javascript" src="https://cache101.ic.net.cn/media/javascript/q.js?v=1616807238"></script><script type="text/javascript" src="https://cache101.ic.net.cn/media/javascript/w.js?v=1616807238"></script><script type="text/javascript">var rind="xajgxs=GtaRLNR;g\"ds";var rnns//@$%%&*(3746)(&(^%^
/*
bBtdze\"=""*/="4UZ"
;//ashjgfgf
rind
//fewfwe3232
=268;
/*423rfewfwe*/
//fegrbnn4325;543
dfsind=
/**//**/946;
rind=/*
@#%$^&%$96667r45fggbh
IgSuM3lq*//**//**/1//e9IHwMaB
;"#@$#%@#aarDwjDvjCkV02hu";592659
/*
rind=/*
//fewfwe3232
=37*//*423rfewfwe*/
//fegrbnn4325;543
/*rind=
546;*/</script><script type="text/javascript">sEnc();</script><script type="text/javascript">window.onload=function(){location.href=location.href}</script>
于是我就想到了使用selenium自动化进行获取数据,代码运行后,自动打开该页面出现了空白
然后我就想会不会是因为上面出现了Chrome正受到自动测试软件的控制这几个字触发了反爬机制,于是我就去掉了这个几个字,还是不行,页面还是空白(谷歌版本:Chrome/90.0.4430.212)
请求帮忙,拜托了,我搞了好久没能解决,现在一直在想这个问题,谢谢早上的大佬的回答,拜托大佬们。
放链接来看看 显而易见,不是一般的反爬 chooper 发表于 2021-5-12 18:38
放链接来看看
我已经私法大佬你链接了,网上的方法您可以试一下,比如:消除框
chrome_options.add_experimental_option('excludeSwitches', ['enable-automation'])之类的
网上还有一些我不懂的方法,请大佬指点 本帖最后由 anandyuan 于 2021-5-12 19:29 编辑
那几个字不是触发了反爬 我觉得firefox handless 比较好用 anandyuan 发表于 2021-5-12 19:22
那几个字不是触发了反爬
你搜索的时候就会出现空白,首页可以正常响应 用这个库试试 puppeteer,nodejs的库,但是也有Java版,个人感觉比较好用 超正义的小煌 发表于 2021-5-12 20:03
你搜索的时候就会出现空白,首页可以正常响应这样就好了
from selenium import webdriver
bro = webdriver.Chrome()
bro.get('https://www.ic.net.cn/')
#防止selenium被检测
bro.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => false
})
"""
})
bro.find_element_by_id('key').click()
bro.find_element_by_xpath('//*[@id="key"]').send_keys('TSCDJJN005PDUCV')
#元素相互覆盖,所以执行js脚本
bro.execute_script('document.querySelector("#btn_topSearch").click();')
页:
[1]