之前由於做淘寶客,建立了很多推廣位,但是去年開始限制每個賬號只能建立200個推廣位,由於一直沒有大動作,所以也就沒有刪除多餘的廣告位,恰逢這段時間需要新建推廣位,發現超過默認數量無法新建,但是平臺又不支持批量刪除,那麼多挨個手工刪除很不現實。所以,就只能自己寫個腳本批量刪除了。
寫腳本之前需要抓取請求內容,分析認證方式和請求方式,一般網站系統的用戶認證大致有cookie,session,token,jwt等認證方式,經過調試發現阿里媽媽用的是cookie方式。對認證感興趣的可以閱讀下面這篇文章。
獲取認證信息
首先登錄平臺,然後F12打開調試窗口,先獲取所有推廣位,同時獲取cookie信息,這個cookie有效期只有半小時,所以必須半小時內用這個認證操作完所有事情,否則就需要重新獲取。
獲取所有推廣位
/common/adzone/adzoneManage.json?toPage=1&perPageSize=40
從上面可以拿到地址,默認是第一頁,而且每頁默認是40條數據,我們把每頁數據調整為你當前的推廣位數量,然後一次性拿出所有數據。
取到所有推廣位數據後,根據正則表達式把需要的推廣位Id過濾出來
批量刪除推廣位
首先平臺執行一個刪除操作,然後找出刪除的地址和入參
接下來按照入參和上面獲得的推廣位,開始批量刪除,這個有多種方式,這兒先用java寫個腳本
<code>@ApiOperation(value="刪除廣告位", notes="刪除廣告位")
@ResponseBody@RequestMapping(value="adzoneDelete",method={RequestMethod.POST,RequestMethod.GET})
public String adzoneDelete() {
String str[]={"推廣位1","推廣位2"};
String string=null;
for(int i=0;i<str.length> string= PageUtilsChromes.httpPost("https://pub.alimama.com/common/adzone/adzoneDelete.json?gcid=&adzoneids="+
str[i]+"&t=&pvid=&_tb_token_=");//+ StringUtil.getRandomNum(3)); int sleepTime= 1;
System.out.print("返回"+string);
System.out.print("間隔時間"+sleepTime);
try {
TimeUnit.MILLISECONDS.sleep(sleepTime);
} catch (InterruptedException e) {
//e.printStackTrace(); }
}
LOGGER.info("查詢訂單:"+string);
return string;
}/<str.length>/<code>
把所有推廣位Id數組化,然後循環遍歷執行刪除操作,同時中間會有休眠,以防系統檢測為非正常操作。然後發起請求即可
附之前批量建推廣位方法
其實和上面的刪除類似
<code>/common/adzone/selfAdzoneCreate.json/<code>
讓軟件有溫度,讓軟件提高效率才是本文的重點。
閱讀更多 聊推 的文章