新聞中心
最近在玩微博,想用java自己搞個(gè)。本人沒有項(xiàng)目經(jīng)驗(yàn),比較笨,希望能有個(gè)視頻什么的一步步帶著做。
如果編寫微博,如果只用java來(lái)編寫的話可能有一定難度吧(不是很懂),一般這類的用php,.net和java的幾種語(yǔ)言共同編寫的
在吐魯番等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需開發(fā)網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),全網(wǎng)營(yíng)銷推廣,外貿(mào)營(yíng)銷網(wǎng)站建設(shè),吐魯番網(wǎng)站建設(shè)費(fèi)用合理。
如果學(xué)習(xí)ssh,本人只對(duì)mvc模式下有一點(diǎn)了解,不過道理應(yīng)該是相通的,這個(gè)模式個(gè)人認(rèn)為至少對(duì)于配置文件的管理相對(duì)清晰,層次感很好,雖然有點(diǎn)繁瑣,不過對(duì)于初學(xué)ssh,了解信息的傳遞是很有幫助的,本人還在學(xué)習(xí)ssh中,有問題可以相互探討學(xué)習(xí)
如何使用java代碼訪問微博短網(wǎng)址的url
① 將長(zhǎng)網(wǎng)址用md5算法生成32位簽名串,分為4段,,每段8個(gè)字符;
② 對(duì)這4段循環(huán)處理,取每段的8個(gè)字符, 將他看成16進(jìn)制字符串與0x3fffffff(30位1)的位與操作,超過30位的忽略處理;
③ 將每段得到的這30位又分成6段,每5位的數(shù)字作為字母表的索引取得特定字符,依次進(jìn)行獲得6位字符串;
④ 這樣一個(gè)md5字符串可以獲得4個(gè)6位串,取里面的任意一個(gè)就可作為這個(gè)長(zhǎng)url的短url地址。
很簡(jiǎn)單的理論,我們并不一定說得到的URL是唯一的,但是我們能夠取出4組URL,這樣幾乎不會(huì)出現(xiàn)太大的重復(fù)。
求真正有效的可以模擬登錄新浪微博的java代碼,后續(xù)可以用Jsoup進(jìn)行抓取。急急!!登錄成功馬上給分!
package?jsoupTest;
import?java.io.IOException;
import?java.util.ArrayList;
import?java.util.HashMap;
import?java.util.List;
import?java.util.Map;
import?org.jsoup.Connection.Method;
import?org.jsoup.Connection.Response;
import?org.jsoup.Jsoup;
public?class?JsoupTest?{
public?static?void?main(String[]?args)?throws?IOException?{
MapString,?String?map?=?new?HashMap();
//map.put請(qǐng)根據(jù)自己的微博cookie得到
Response?res?=?Jsoup.connect("別人的主頁(yè)id")
.cookies(map).method(Method.GET).execute();
String?s?=?res.body();
System.out.println(s);
String[]?ss?=?s.split("scriptFM.view");
int?i?=?0;
//?pl_content_homeFeed
//?pl.content.homeFeed.index
ListString?list?=?new?ArrayList();
for?(String?x?:?ss)?{
// System.out.println(i++?+?"======================================");
// System.out.println(x.substring(0,
// x.length()??200???200?:?x.length()));
// System.out.println("===========================================");
if?(x.contains("\"html\":\""))?{
String?value?=?getHtml(x);
list.add(value);
System.out.println(value);
}
}
//?content=ss[8].split("\"html\":\"")[1].replaceAll("(\\\\t|\\\\n)",
//?"").replaceAll("\\\\\"",?"\"").replaceAll("\\\\/",?"/");
//?content=content.substring(0,
//?content.length()=13?content.length():content.length()-13);
//?System.out.println(Native2AsciiUtils.ascii2Native(content));
}
public?static?String?getHtml(String?s)?{
String?content?=?s.split("\"html\":\"")[1]
.replaceAll("(\\\\t|\\\\n)",?"").replaceAll("\\\\\"",?"\"")
.replaceAll("\\\\/",?"/");
content?=?content.substring(0,
content.length()?=?13???content.length()
:?content.length()?-?13);
return?Native2AsciiUtils.ascii2Native(content);
}
標(biāo)題名稱:java仿微博代碼 20205微博代碼
分享鏈接:http://www.ef60e0e.cn/article/doiphhj.html