国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

企業(yè)信用信息公示系統(tǒng)福建谷歌優(yōu)化技巧

企業(yè)信用信息公示系統(tǒng)福建,谷歌優(yōu)化技巧,流行的網(wǎng)站開(kāi)發(fā)語(yǔ)言,收錄之家繼續(xù),書(shū)接上回,這次我通過(guò)jsrpc,也學(xué)會(huì)了不少逆向的知識(shí),感覺(jué)對(duì)于一般的網(wǎng)站應(yīng)該都能應(yīng)付了。當(dāng)然我說(shuō)的是簡(jiǎn)單的網(wǎng)站,遇到那些混淆的,還有那種猿人學(xué)里面的題目,還是免談了。那種需要的水平太高…

繼續(xù),書(shū)接上回,這次我通過(guò)jsrpc,也學(xué)會(huì)了不少逆向的知識(shí),感覺(jué)對(duì)于一般的網(wǎng)站應(yīng)該都能應(yīng)付了。當(dāng)然我說(shuō)的是簡(jiǎn)單的網(wǎng)站,遇到那些混淆的,還有那種猿人學(xué)里面的題目,還是免談了。那種需要的水平太高,我學(xué)習(xí)爬蟲(chóng)的目的也不是找什么工作,只是為了找數(shù)據(jù),能夠滿足我找數(shù)據(jù)的需要就好。

現(xiàn)在我的初步問(wèn)題已經(jīng)解決了,原以為可以使用jsrpc一路搜集數(shù)據(jù)。可是還是遇到了新的問(wèn)題。

接下來(lái)我想搜集這個(gè)網(wǎng)站的志愿服務(wù)項(xiàng)目的數(shù)據(jù)。發(fā)現(xiàn)這個(gè)網(wǎng)站的請(qǐng)求類(lèi)型也比較復(fù)雜,要抓到某一個(gè)項(xiàng)目的數(shù)據(jù),需要多次點(diǎn)擊,定位到那個(gè)項(xiàng)目,而且進(jìn)入項(xiàng)目的新頁(yè)面,好像jsrpc獲得的參數(shù)也是沒(méi)什么用的了。

不知道為什么??梢韵瓤匆幌隆?/p>

這時(shí),我知道這個(gè)query應(yīng)該是也帶bean參數(shù)。

?那么再次截獲它的i值,就可以使用rpc,獲得bean參數(shù)吧,想著時(shí)這樣的。

這個(gè)query,地址是:/webapi/listProjectsFortisWeb/query

那么我們就找這個(gè)請(qǐng)求時(shí)的i

?i值有了,可以直接請(qǐng)求了吧。但是結(jié)果令人失望

得到的結(jié)果一直是固定的那么幾個(gè)東西。即使換了i,換了參數(shù),也會(huì)得到同樣的結(jié)果。我也不太明白為什么??赡苁蔷W(wǎng)站需要經(jīng)過(guò)幾次鼠標(biāo)點(diǎn)擊,在點(diǎn)擊的過(guò)程中,請(qǐng)求變了,我使用python請(qǐng)求,并沒(méi)有抓到他那個(gè)真實(shí)的請(qǐng)求。

過(guò)程太復(fù)雜,我想我也研究不出來(lái),比不了那些搞網(wǎng)站的。所以眼看又進(jìn)入了困境。

這時(shí)候,想到了selenim。雖然一直以來(lái)都覺(jué)得selenium慢的要死。但是沒(méi)辦法啊,我會(huì)的,能夠用的都用的差不多了,不會(huì)的也學(xué)了,學(xué)的也快吐了。不想再繼續(xù)搞下去了,想著selenium慢就慢吧,好歹也是個(gè)辦法。

browsermobproxy的使用

說(shuō)干就干,?但是還有一個(gè)問(wèn)題,就是我怎么能讓senenium返回給我一個(gè)json,也就是一個(gè)動(dòng)態(tài)網(wǎng)站返回給我的東西,我怎么截取這個(gè)json。selenium一旦渲染出來(lái),就是一個(gè)網(wǎng)頁(yè)元素了。怎么抓取到服務(wù)器發(fā)給我的json呢。

這時(shí)候看到知乎上一個(gè)帖子介紹了browsermobproxy。感覺(jué)可以用,就試了一下。

確實(shí)可以。簡(jiǎn)單來(lái)說(shuō),這個(gè)庫(kù)就是相當(dāng)于一個(gè)python版的fiddler,只不過(guò)fiddler是集成在一個(gè)軟件里面,python調(diào)用不方便。但是這個(gè)庫(kù)直接安裝到python里面就可以了。簡(jiǎn)單

直接pip install就可以。

然后我也放棄了使用rpc方法,直接使用python模擬鼠標(biāo)點(diǎn)擊。

?簡(jiǎn)單粗暴。就是慢點(diǎn)。

直接上代碼,

import json
import os
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from browsermobproxy import Server
from selenium.webdriver.chrome.options import Options
import timeserver = Server(r'E:\code\codeForArticle2023\sdzyfw2\sdzyfw2.0\browsermob-proxy-2.1.4\bin\browsermob-proxy.bat')
server.start()
proxy = server.create_proxy()
print(proxy.proxy)
proxy.new_har("my_baidu", options={"captureHeaders": True, "captureContent":True})chrome_options = Options()
chrome_options.add_argument('--proxy-server={0}'.format(proxy.proxy))
chrome_options.add_argument('--ignore-certificate-errors')
chrome_options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"])driver = webdriver.Chrome(executable_path=r'venv/Scripts/chromedriver-win64/chromedriver.exe', options=chrome_options)
driver.get("http://sd.chinavolunteer.mca.gov.cn/subsite/shandong/project")ele = WebDriverWait(driver, 10, 0.2).until(EC.visibility_of_element_located((By.XPATH, u'//div//a[text()="煙臺(tái)市"]')), u'沒(méi)有發(fā)現(xiàn)內(nèi)容')
item = driver.find_element_by_xpath("//div//a[text()='煙臺(tái)市']")
item.click()ele = WebDriverWait(driver, 10, 0.2).until(EC.visibility_of_element_located((By.XPATH, u'//div//a[text()="芝罘區(qū)"]')), u'沒(méi)有發(fā)現(xiàn)內(nèi)容')
item2 = driver.find_element_by_xpath("//a[text()='芝罘區(qū)']")
item2.click()ele = WebDriverWait(driver, 10, 0.2).until(EC.visibility_of_element_located((By.XPATH, u'//div//a[text()="已結(jié)項(xiàng)"]')), u'沒(méi)有發(fā)現(xiàn)內(nèi)容')
item3 = driver.find_element_by_xpath("//a[text()='已結(jié)項(xiàng)']")
item3.click()try:WebDriverWait(driver, 10).until(EC.presence_of_element_located(By.CSS_SELECTOR, "div.panel-card"))except Exception as e:doNthing = e# ele = WebDriverWait(driver, 10, 0.2).until(EC.visibility_of_element_located((By.XPATH, u'//div//a[text()="已結(jié)項(xiàng)"]')), u'沒(méi)有發(fā)現(xiàn)內(nèi)容')
panels = driver.find_elements_by_css_selector(".panel-card")
p1 = panels[0]link = p1.find_element_by_css_selector('h2')
link.click()win_hans = driver.window_handles
driver.switch_to.window(win_hans[-1])shijian  = driver.find_element_by_xpath("//span[text()='時(shí)長(zhǎng)公示']")
shijian.click()table = driver.find_element_by_xpath("//table[@class='table-list']")
trs = table.find_elements_by_xpath('//tbody//tr')
len(trs)if len(trs) == 13:page = driver.find_element_by_xpath("//a[text()='下一頁(yè)']")page.textpage.click()
else:pass# driver.close()result = proxy.harwith open("sdzyfw2/sdzyfw2.0/har_all.json", 'w', encoding='utf-8') as f:f.write(json.dumps(list1, ensure_ascii=False))
# print(str(result))list1 =[]
for rs in result['log']['entries']:if "china" in rs['request']['url']:if "chinavolunteer" in rs['request']['url']:print(rs['request']['url'])# response = rs['response']list1.append(rs)with open("sdzyfw2/sdzyfw2.0/har.json", 'w', encoding='utf-8') as f:f.write(json.dumps(list1, ensure_ascii=False))

代碼也沒(méi)怎么整理,大致的意思就是使用selenium呼出瀏覽器,然后在瀏覽器里面一步步找到我想要的東西,最后把這些所有的包存放到一個(gè)har里面。后期在篩選har,提取我想要的信息。

發(fā)現(xiàn)這個(gè)也是很無(wú)敵的,直接免去了反反爬措施。因?yàn)榫褪菫g覽器,除非網(wǎng)站對(duì)webdriver有檢測(cè),不然也沒(méi)辦法。就老老實(shí)實(shí)的一個(gè)一個(gè)爬吧。

http://m.aloenet.com.cn/news/38663.html

相關(guān)文章:

  • 網(wǎng)站建設(shè)的基本內(nèi)容免費(fèi)直鏈平臺(tái)
  • 仙桃網(wǎng)站設(shè)計(jì)網(wǎng)絡(luò)推廣的工作好做嗎
  • 有的網(wǎng)站打開(kāi)的是html結(jié)尾的路徑有的不是互聯(lián)網(wǎng)運(yùn)營(yíng)推廣公司
  • 廣州中小企業(yè)網(wǎng)站制作seo網(wǎng)站推廣實(shí)例
  • 電子商務(wù)網(wǎng)站管理內(nèi)容競(jìng)價(jià)托管推廣公司
  • 網(wǎng)站建設(shè)數(shù)據(jù)庫(kù)系統(tǒng)什么都不懂能去干運(yùn)營(yíng)嗎
  • 汕頭建設(shè)局網(wǎng)站國(guó)家新聞最新消息今天
  • 網(wǎng)站支付平臺(tái)是怎么做的什么公司適合做seo優(yōu)化
  • 做網(wǎng)站要怎么備案網(wǎng)站建設(shè)是什么
  • 新華書(shū)店的做的數(shù)字閱讀網(wǎng)站51外鏈代發(fā)網(wǎng)
  • 建網(wǎng)站公司用什么網(wǎng)站程序濟(jì)南百度競(jìng)價(jià)開(kāi)戶
  • 網(wǎng)站制作與網(wǎng)頁(yè)設(shè)計(jì)seo公司軟件
  • 一站式服務(wù)理念打廣告推廣怎么做
  • 網(wǎng)站開(kāi)發(fā) 價(jià)格差異百度號(hào)碼認(rèn)證平臺(tái)官網(wǎng)首頁(yè)
  • 自己做soho需要做網(wǎng)站嗎長(zhǎng)春網(wǎng)站制作公司
  • 網(wǎng)站建設(shè)公司怎么免費(fèi)自己做推廣
  • 怎么做自己的網(wǎng)站自建一個(gè)頁(yè)面友情鏈接圖片
  • 貿(mào)易公司寮步網(wǎng)站建設(shè)哪家好怎么做好網(wǎng)站搜索引擎優(yōu)化
  • 廈門(mén)服裝商城網(wǎng)站建設(shè)優(yōu)化網(wǎng)站快速排名軟件
  • cpa單頁(yè)網(wǎng)站怎么做谷歌手機(jī)版瀏覽器官網(wǎng)
  • php網(wǎng)站開(kāi)發(fā)是什么嗎廣州百度提升優(yōu)化
  • 鄧州網(wǎng)站制作seo1域名查詢
  • 推廣普通話喜迎二十手抄報(bào)seo鏈接優(yōu)化建議
  • 自己這么做網(wǎng)站semir是什么牌子
  • 麻涌公司網(wǎng)站建設(shè)公司百度云電腦網(wǎng)頁(yè)版入口
  • 電子商務(wù)網(wǎng)站建設(shè)合同范本外包公司排名
  • 自己在線制作logo免費(fèi)網(wǎng)站北京seo優(yōu)化廠家
  • 公司網(wǎng)站開(kāi)發(fā)費(fèi)用計(jì)入什么科目營(yíng)銷(xiāo)公司
  • vs網(wǎng)站中的輪播怎么做軟文寫(xiě)作技巧有哪些
  • 圖片1600px做網(wǎng)站武漢網(wǎng)優(yōu)化seo公司