学习selenium
import requests import bs4 from selenium.webdriver.common.by import By import pandas as pd driverPath = "C:\Program Files (x86)\Microsoft\Edge\Application\msedgedriver.exe" url = 'https://so.gushiwen.cn/' url2 = 'gushi/tangshi.aspx' msg = requests.get(url=url + url2) soup = bs4.BeautifulSoup(msg.text, "html.parser") titles = soup.find_all(class_='typecont') result = [] from selenium import webdriver driver = webdriver.Edge(driverPath) for title in titles: list_name = title.find_all('a') for item in list_name: driver.get(url + item['href']) a = driver.find_element(By.CLASS_NAME,'contson').text result.append((item.text,a)) driver.quit() result = pd.DataFrame(result,columns=['诗名','诗词']) print(result)
有个唐诗三百首的爬取任务,而人家的是script动态加载,普通的request.get无法支持,因此引入selenium库,模拟浏览器访问,但是由于需要浏览器访问,大大增加了运行时间
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
2023-03-20 为嘛没展示
2023-03-20 2023.3.20总结
2023-03-20 android stdio对于xml中列表的展示
2023-03-20 android stdio中闹钟的实现
2023-03-20 基于android stdio的sqlite增删改查