对于一些网站,他的敏感数据是通过随机生成的ID等等来进行推送数据,而使用urllib或者抓包分析是解决不了这个问题的,我们可以通过浏览器自动化,来模拟正常的浏览器操作,来获取数据。
import time from selenium import webdriver import re import urllib.request '''让phantomJS通过其他浏览器来访问 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities dcap=dict(DesiredCapabilities.PHANTOMJS) dcap["phantomjs.page.settings.userAgent"]=("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36") browser=webdriver.PhantomJS(desired_capabilities=dcap) ''' browser = webdriver.Chrome() browser.get('http://www.kuman.com/cartoon/104666/1') for i in range(18): js='window.scrollTo('+str(i*1080)+','+str((i+1)*1080)+')'#滑动(起始点,到达的点) browser.execute_script(js)#运行js代码 time.sleep(2) # for i in range(18): # js="document.body.scrollTop=100"#滚动条下来100px # browser.execute_script(js) # browser.implicitly_wait(300) data=browser.page_source#源代码 browser.quit() pat='data-src="(.*?)"' all=re.compile(pat).findall(data) for i in all: print(i) # path="/Users/new/lean/test/动漫/"+str(i)+".jpg" # urllib.request.urlretrieve(all[i],path)
我加你了哦
以后多发点哦
好
记住这个网站了
我加你了哦
奥利给
我也是小白以后多多交流
看了那么多博客,就你的能看懂