from DrissionPage import ChromiumPage, ChromiumOptions co = ChromiumOptions().set_local_port(9222) page = ChromiumPage(addr_or_opts=co) from DrissionPage.common import Settings Settings.singleton_tab_obj = True def log(): zhuti1 = '经营者' zhuti2 = '民宿经营者' page.get('https://kns.cnki.net/kns/advsearch?dbcode=CJZK') page.set.window.max() page.ele('#txt_1_value1').input(zhuti1) page.ele('x:/html/body/div[2]/div[3]/div[3]/div[2]/div[1]/div[2]/span[2]/select[2]').click(by_js=True) page.ele('text=或含').click(by_js=True) page.ele('#txt_1_value2').input(zhuti2) page.ele('#startYear').click(by_js=True) page.ele('x://*[@id="startYear"]/option[5]').click(by_js=True) page.ele('#endYear').click(by_js=True) page.ele('x://*[@id="endYear"]/option[3]').click(by_js=True) page.ele('#SCI').click(by_js=True) page.ele('#CSSCI').click(by_js=True) page.ele('.search').click(by_js=True) page.wait.load_start() # 等待页面进入加载状态 page.ele('tx=经营者').click(by_js=True)#主题选择输入关键字 page.wait.load_start() # 等待页面进入加载状态 def collect(): while True: for i in page.eles('.fz14'): page.latest_tab.wait.load_start() # 等待页面进入加载状态 print(i.text) page.new_tab(url=i.link) page.latest_tab.wait.load_start() # 等待页面进入加载状态 page.latest_tab.ele('.btn-dlpdf').click() page.latest_tab.wait.load_start() # 等待页面进入加载状态 try: if page.latest_tab.title=='滑动验证': print(page.latest_tab.title) input('手动滑动验证后请输入回车:') except: print('没有滑块验证') try: page.latest_tab.ele('#downSubmit').click(by_js=True) except: print('没有立即下载') page.close_tabs(others=True) btn = page('#PageNext', timeout=2) if btn: btn.click(by_js=True) page.wait.load_start() else: break log() collect()
DrissionPage拽神知网PDF论文下载辅助
于 2024-04-02 22:49:41 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)