日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android jsoup 课程表,使用jsoup爬取数据实现android课程表

發布時間:2024/3/12 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android jsoup 课程表,使用jsoup爬取数据实现android课程表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

說明:只是爬蟲的一個實現案例,所以沒有多做功能,只做了登錄跟課表功能,課表有修改周次,單擊課程顯示課程詳細信息等功能。

開發平臺:Android Studio

界面

使用TimetableView android課程表控件,需要添加依賴

jsoup依賴:compile 'org.jsoup:jsoup:1.10.2'

界面控件依賴: compile 'com.zhuangfei:TimetableView:2.0.6'

界面效果如下:

實現原理(爬蟲實現)

使用jsoup爬取教務系統數據,connect()方法連接教務系統,直接利用cookie連接學生課表頁面,解析返回的HTML頁面獲取該用戶的全部課程并封裝為java對象,再存入數據庫,可以使用java后臺服務器傳json數據給android客戶端,android客戶端解析json數據,然后將課表數據展示出來。由于本案例小而單一,因此沒有配置服務器,改為將爬取的數據直接存入到android本地數據庫SQLite,課表的展示去本地數據庫查詢即可。

(注:各個學校學院的教務系統不盡相同,具體如何爬取數據詳見jsoup官方網站jsoup)

實體類:

public class MySubject implements ScheduleEnable {

public static final String EXTRAS_ID="extras_id";

public static final String EXTRAS_NUMBER="extras_number";//小班號

public static final String EXTRAS_AD_URL="extras_ad_url";//廣告Url

private int id;

/*

* 班號

* */

private String number;

/**

* 課程名

*/

private String name;

//無用數據

private String time;

/**

* 教室

*/

private String room;

/**

* 教師

*/

private String teacher;

/**

* 第幾周至第幾周上

*/

private List weekList;

/**

* 開始上課的節次

*/

private int start;

/**

* 上課節數

*/

private int step;

/**

* 周幾上

*/

private int day;

private String term;

/**

* 一個隨機數,用于對應課程的顏色

*/

private int colorRandom = 0;

private String url;

public void setUrl(String url) {

this.url = url;

}

public String getUrl() {

return url;

}

public MySubject() {

// TODO Auto-generated constructor stub

}

public void setTime(String time) {

this.time = time;

}

public String getTime() {

return time;

}

public void setTerm(String term) {

this.term = term;

}

public String getTerm() {

return term;

}

public MySubject(String term,String name, String room, String teacher, List weekList, int start, int step, int day, int colorRandom,String time,String number) {

super();

this.term=term;

this.name = name;

this.room = room;

this.teacher = teacher;

this.weekList=weekList;

this.start = start;

this.step = step;

this.day = day;

this.colorRandom = colorRandom;

this.time = time;

this.number = number;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getRoom() {

return room;

}

public void setRoom(String room) {

this.room = room;

}

public String getTeacher() {

return teacher;

}

public void setTeacher(String teacher) {

this.teacher = teacher;

}

public void setWeekList(List weekList) {

this.weekList = weekList;

}

public List getWeekList() {

return weekList;

}

public int getStart() {

return start;

}

public void setStart(int start) {

this.start = start;

}

public int getStep() {

return step;

}

public void setStep(int step) {

this.step = step;

}

public int getDay() {

return day;

}

public void setDay(int day) {

this.day = day;

}

public int getColorRandom() {

return colorRandom;

}

public void setColorRandom(int colorRandom) {

this.colorRandom = colorRandom;

}

@Override

public Schedule getSchedule() {

Schedule schedule=new Schedule();

schedule.setDay(getDay());

schedule.setName(getName());

schedule.setRoom(getRoom());

schedule.setStart(getStart());

schedule.setStep(getStep());

schedule.setTeacher(getTeacher());

schedule.setWeekList(getWeekList());

schedule.setColorRandom(2);

schedule.putExtras(EXTRAS_ID,getId());

schedule.putExtras(EXTRAS_AD_URL,getUrl());

schedule.putExtras(EXTRAS_NUMBER,getNumber());

return schedule;

}

public void setId(int id) {

this.id = id;

}

public int getId() {

return id;

}

public String getNumber() {

return number;

}

public void setNumber(String number) {

this.number = number;

}

}

課表界面,對依賴的課表控件進行了部分修改

數據源改為本地數據庫查詢,實現了動態獲取數據源:mySubjects = getLocalSubjectData();

課表界面:

/**

* 課表Activity

*

*/

public class BaseFuncActivity extends AppCompatActivity implements View.OnClickListener{

private static final String TAG = "BaseFuncActivity";

//控件

TimetableView mTimetableView;

WeekView mWeekView;

Button moreButton;

LinearLayout layout;

TextView titleTextView;

List mySubjects;

//記錄切換的周次,不一定是當前周

int target = -1;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_base_func);

moreButton = (Button) findViewById(R.id.id_more);

moreButton.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

showPopmenu();

}

});

//數據源

// mySubjects = SubjectRepertory.loadDefaultSubjects2();

//獲取本地數據庫數據

mySubjects = getLocalSubjectData();

//mySubjects.addAll(SubjectRepertory.loadDefaultSubjects());

titleTextView = (TextView) findViewById(R.id.id_title);

layout = (LinearLayout) findViewById(R.id.id_layout);

layout.setOnClickListener(this);

initTimetableView();//初始化

setMonthWidth();//設置月份寬度

// showTime();//顯示時間

buildItemText();//設置課程文本內容

}

//獲取本地數據庫數據

private List getLocalSubjectData() {

List data = DaoImpl.GetCourceData();

if(!GetSaveStatus()){//非登錄狀態

DaoImpl.ClearCource();//清空表格

}

return data;

}

//判斷登錄狀態

private boolean GetSaveStatus() {

SharedPreferences Preferences=getSharedPreferences("userInfo",MODE_PRIVATE);

String username=Preferences.getString("username","");

String password=Preferences.getString("password","");

if(username.equals("")&&password.equals("")){

return false;

}else{

return true;

}

}

/**

* 初始化課程控件

*/

private void initTimetableView() {

//獲取控件

mWeekView = (WeekView) findViewById(R.id.id_weekview);

mTimetableView = (TimetableView) findViewById(R.id.id_timetableView);

//設置周次選擇屬性

mWeekView.source(mySubjects)

.curWeek(getLocalWeek())

.callback(new IWeekView.OnWeekItemClickedListener() {

@Override

public void onWeekClicked(int week) {

int cur = mTimetableView.curWeek();

//更新切換后的日期,從當前周cur->切換的周week

mTimetableView.onDateBuildListener()

.onUpdateDate(cur, week);

mTimetableView.changeWeekOnly(week);

}

})

.callback(new IWeekView.OnWeekLeftClickedListener() {

@Override

public void onWeekLeftClicked() {

onWeekLeftLayoutClicked();

}

})

.isShow(false)//設置隱藏,默認顯示

.showView();

mTimetableView.source(mySubjects)

.curWeek(getLocalWeek())

.curTerm("")

.maxSlideItem(16)

.monthWidthDp(30)

//透明度

//日期欄0.1f、側邊欄0.1f,周次選擇欄0.6f

//透明度范圍為0->1,0為全透明,1為不透明

// .alpha(0.1f, 0.1f, 0.6f)

.callback(new ISchedule.OnItemClickListener() {

@Override

public void onItemClick(View v, List scheduleList) {

display(scheduleList);

}

})

.callback(new ISchedule.OnItemLongClickListener() {

@Override

public void onLongClick(View v, int day, int start) {

Toast.makeText(BaseFuncActivity.this,

"長按:周" + day + ",第" + start + "節",

Toast.LENGTH_SHORT).show();

}

})

.callback(new ISchedule.OnWeekChangedListener() {

@Override

public void onWeekChanged(int curWeek) {

titleTextView.setText("第" + curWeek + "周");

}

})

//旗標布局點擊監聽

.callback(new ISchedule.OnFlaglayoutClickListener() {

@Override

public void onFlaglayoutClick(int day, int start) {

mTimetableView.hideFlaglayout();

Toast.makeText(BaseFuncActivity.this,

"點擊了旗標:周" + (day + 1) + ",第" + start + "節",

Toast.LENGTH_SHORT).show();

}

})

.showView();

}

/*

獲取周數

* */

private int getLocalWeek() {

int weekResult = -1;

SharedPreferences preferences=getSharedPreferences("userInfo",MODE_PRIVATE);

int startWeek = preferences.getInt("weekNumber",-1);//,起始周從SharedPreferences獲取

//華軟教務系統總共17周

if(startWeek<=17){

String startDay=preferences.getString("date","");//起始周的星期一,從SharedPreferences獲取,為yyyy-MM-dd格式

// String endDay= CalendarUtil.getMondayOfWeek();//當前周的星期一,為yyyy-MM-dd格式

String endDay= CalendarUtil.getMondayOfWeek2();//當前周的星期一,為yyyy-MM-dd格式

SharedPreferences.Editor editor=getSharedPreferences("userInfo",MODE_PRIVATE).edit();

editor.putString("current", endDay);

editor.commit();

int tempweek=CalendarUtil.getTwoDay(endDay,startDay);//間隔天數

int week=tempweek/7;

if(week==0){

weekResult=startWeek;

}else{

int finalweek=startWeek+week;

if(finalweek>17){

weekResult=17;

}else{

weekResult=finalweek;

}

}

return weekResult;

}else{

weekResult=17;

return weekResult;

}

}

/**

* 周次選擇布局的左側被點擊時回調

* 對話框修改當前周次

*/

protected void onWeekLeftLayoutClicked() {

final String items[] = new String[20];

int itemCount = mWeekView.itemCount();

for (int i = 0; i < itemCount; i++) {

items[i] = "第" + (i + 1) + "周";

}

target = -1;

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("設置當前周");

builder.setSingleChoiceItems(items, mTimetableView.curWeek() - 1,

new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialogInterface, int i) {

target = i;

}

});

builder.setPositiveButton("設置為當前周", new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

if (target != -1) {

mWeekView.curWeek(target + 1).updateView();

mTimetableView.changeWeekForce(target + 1);

//把修改的周次存入SharedPreferences中

SharedPreferences.Editor editor=getSharedPreferences("userInfo",MODE_PRIVATE).edit();

editor.putInt("weekNumber",target+1);

// editor.putString("date", CalendarUtil.getMondayOfWeek());

editor.putString("date", CalendarUtil.getMondayOfWeek2());

editor.commit();

// Log.d("info",Integer.toString(target+1));

}

}

});

builder.setNegativeButton("取消", null);

builder.create().show();

}

/**

* 顯示內容

*

* @param beans

*/

protected void display(List beans) {

String str = "";

for (Schedule bean : beans) {

str += bean.getName() + ","+bean.getWeekList().toString()+","+bean.getTeacher()+",["+bean.getExtras().get(MySubject.EXTRAS_NUMBER)+"]\n";

}

Toast.makeText(this, str, Toast.LENGTH_SHORT).show();

}

/**

* 顯示彈出菜單

*/

private void showPopmenu() {

PopupMenu popup = new PopupMenu(this, moreButton);

popup.getMenuInflater().inflate(R.menu.popmenu_base_func, popup.getMenu());

popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {

public boolean onMenuItemClick(MenuItem item) {

switch (item.getItemId()) {

/*case R.id.top1:

addSubject();

break;

case R.id.top2:

deleteSubject();

break;*/

case R.id.top4:

hideNonThisWeek();

break;

case R.id.top5:

showNonThisWeek();

break;

/*case R.id.top6:

setMaxItem(8);

break;

case R.id.top7:

setMaxItem(10);

break;

case R.id.top8:

setMaxItem(12);

break;*/

case R.id.top9:

showTime();

break;

case R.id.top10:

hideTime();

break;

case R.id.top11:

showWeekView();

break;

case R.id.top12:

hideWeekView();

break;

/*case R.id.top13:

setMonthWidth();

break;

case R.id.top16:

resetMonthWidth();

break;*/

case R.id.top14:

hideWeekends();

break;

case R.id.top15:

showWeekends();

break;

case R.id.top17:

exitCurrentAccount();

break;

default:

break;

}

return true;

}

});

popup.show();

}

/**

* 退出當前賬號

* 清空本地賬號及SharedPreferences

*/

private void exitCurrentAccount() {

//清空數據庫

DaoImpl.ClearCource();

//清空SharedPreferences

SharedPreferences.Editor editor=getSharedPreferences("userInfo",MODE_PRIVATE).edit();

editor.putInt("weekNumber",-1);

editor.putString("date", "");

editor.putString("username","");

editor.putString("password","");

editor.putString("current", "");

editor.commit();

Intent intent=new Intent(BaseFuncActivity.this,MainActivity.class);

startActivity(intent);

finish();

}

/**

* 刪除課程

* 內部使用集合維護課程數據,操作集合的方法來操作它即可

* 最后更新一下視圖(全局更新)

*/

protected void deleteSubject() {

int size = mTimetableView.dataSource().size();

int pos = (int) (Math.random() * size);

if (size > 0) {

mTimetableView.dataSource().remove(pos);

mTimetableView.updateView();

}

}

/**

* 添加課程

* 內部使用集合維護課程數據,操作集合的方法來操作它即可

* 最后更新一下視圖(全局更新)

*/

protected void addSubject() {

List dataSource = mTimetableView.dataSource();

int size = dataSource.size();

if (size > 0) {

Schedule schedule = dataSource.get(0);

dataSource.add(schedule);

mTimetableView.updateView();

}

}

/**

* 隱藏非本周課程

* 修改了內容的顯示,所以必須更新全部(性能不高)

* 建議:在初始化時設置該屬性

*

* updateView()被調用后,會重新構建課程,課程會回到當前周

*/

protected void hideNonThisWeek() {

mTimetableView.isShowNotCurWeek(false).updateView();

}

/**

* 顯示非本周課程

* 修改了內容的顯示,所以必須更新全部(性能不高)

* 建議:在初始化時設置該屬性

*/

protected void showNonThisWeek() {

mTimetableView.isShowNotCurWeek(true).updateView();

}

/**

* 設置側邊欄最大節次,只影響側邊欄的繪制,對課程內容無影響

*

* @param num

*/

protected void setMaxItem(int num) {

mTimetableView.maxSlideItem(num).updateSlideView();

}

/**

* 顯示時間

* 設置側邊欄構建監聽,TimeSlideAdapter是控件實現的可顯示時間的側邊欄

*/

protected void showTime() {

String[] times = new String[]{

"09:00", "10:20", "10:40", "12:00",

"12:30", "13:50", "14:00", "15:20",

"15:30", "16:50", "17:00", "18:20",

"19:00", "20:20", "20:30", "21:50"

};

OnSlideBuildAdapter listener = (OnSlideBuildAdapter) mTimetableView.onSlideBuildListener();

listener.setTimes(times)

.setTimeTextColor(Color.BLACK);

mTimetableView.updateSlideView();

}

/**

* 隱藏時間

* 將側邊欄監聽置Null后,會默認使用默認的構建方法,即不顯示時間

* 只修改了側邊欄的屬性,所以只更新側邊欄即可(性能高),沒有必要更新全部(性能低)

*/

protected void hideTime() {

mTimetableView.callback((ISchedule.OnSlideBuildListener) null);

mTimetableView.updateSlideView();

}

/**

* 顯示WeekView

*/

protected void showWeekView() {

mWeekView.isShow(true);

}

/**

* 隱藏WeekView

*/

protected void hideWeekView() {

mWeekView.isShow(false);

}

/**

* 設置月份寬度

*/

private void setMonthWidth() {

mTimetableView.monthWidthDp(50).updateView();

}

/**

* 設置月份寬度,默認40dp

*/

private void resetMonthWidth() {

mTimetableView.monthWidthDp(40).updateView();

}

/**

* 修改顯示的文本

*/

public void buildItemText() {

mTimetableView.callback(new OnItemBuildAdapter() {

@Override

public String getItemText(Schedule schedule, boolean isThisWeek) {

if (isThisWeek) return schedule.getName()+"["+schedule.getExtras().get(MySubject.EXTRAS_NUMBER)+"]"+"\n@"+schedule.getRoom();

return "[非本周]" + schedule.getName()+"["+schedule.getExtras().get(MySubject.EXTRAS_NUMBER)+"]"+"\n@"+schedule.getRoom();

}

})

.updateView();

}

/**

* 隱藏周末

*/

private void hideWeekends() {

mTimetableView.isShowWeekends(false).updateView();

}

/**

* 顯示周末

*/

private void showWeekends() {

mTimetableView.isShowWeekends(true).updateView();

}

@Override

public void onClick(View view) {

switch (view.getId()) {

case R.id.id_layout:

//如果周次選擇已經顯示了,那么將它隱藏,更新課程、日期

//否則,顯示

if (mWeekView.isShowing()) {

mWeekView.isShow(false);

titleTextView.setTextColor(getResources().getColor(R.color.app_course_textcolor_blue));

int cur = mTimetableView.curWeek();

mTimetableView.onDateBuildListener()

.onUpdateDate(cur, cur);

mTimetableView.changeWeekOnly(cur);

} else {

mWeekView.isShow(true);

titleTextView.setTextColor(getResources().getColor(R.color.app_red));

}

break;

}

}

}

登錄:

如果勾選記住登錄,則將學號以及密碼存入SharedPreferences中,下次打開跳過登錄直接顯示課表,實現了離線操作,避免了需要再次聯網登錄爬取數據。

附:源碼詳見github

總結

以上是生活随笔為你收集整理的android jsoup 课程表,使用jsoup爬取数据实现android课程表的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

日本在线观看视频一区 | 国产精品丝袜 | 伊人夜夜 | 国产精品九九久久99视频 | 国产精品18久久久久久久 | 男女视频国产 | 精品高清美女精品国产区 | 日韩三级在线观看 | 国产我不卡 | 国产青草视频在线观看 | 亚洲精品av中文字幕在线在线 | av成人在线电影 | 99精品视频免费全部在线 | 久久久久亚洲精品 | 亚洲视频免费视频 | 国产精品乱码高清在线看 | 久久精品久久久精品美女 | 国产日韩在线视频 | 操操操影院 | 伊人久久电影网 | 亚洲国产大片 | 国产精品久久久久三级 | 国产成视频在线观看 | 黄色h在线观看 | 国产成人一区二区三区 | 亚洲一区二区三区毛片 | 四虎海外影库www4hu | 久久久久久久久久久免费视频 | 亚洲午夜久久久久久久久电影网 | 国产在线视频在线观看 | 天海冀一区二区三区 | 久久久久成 | 日韩三区在线观看 | 午夜精品久久久久久久久久 | 国产精品久久久久久久久大全 | 91.精品高清在线观看 | 久久综合九色综合久99 | 99精品视频在线观看视频 | 毛片精品免费在线观看 | 天天摸日日摸人人看 | 国产资源在线视频 | 美女视频又黄又免费 | 成人在线视频免费观看 | 四虎国产免费 | 亚洲永久精品视频 | 免费不卡中文字幕视频 | avlulu久久精品 | 美女久久久| 欧美日韩三级 | 国产精品久久久久久久久久久久久久 | 久久午夜免费观看 | 99久久久久国产精品免费 | 欧美一区二区伦理片 | 福利电影一区二区 | 成人永久在线 | 成人黄色电影在线播放 | 日本最新高清不卡中文字幕 | 深爱激情五月网 | 97超碰福利久久精品 | 免费高清影视 | 成人污视频在线观看 | 国产99自拍| 成人午夜黄色 | 精品国产一区二区三区四区vr | 国产精品一区二区久久久久 | 激情网站五月天 | 色噜噜日韩精品一区二区三区视频 | 天天干.com | 国产精品毛片一区二区 | 国产99爱 | 五月天婷婷视频 | 欧美成人精品欧美一级乱黄 | 久久成人免费电影 | 国产精品理论视频 | 99热精品国产一区二区在线观看 | 久久国产精品一国产精品 | 免费观看的av网站 | 日韩激情网 | 丁香五月亚洲综合在线 | 亚洲 精品在线视频 | 98精品国产自产在线观看 | 久久久久免费网 | 天天av综合网 | 日韩av一区二区在线影视 | 少妇搡bbbb搡bbb搡忠贞 | 黄色网在线免费观看 | 久久国产区 | 国产成人性色生活片 | 日本黄色大片免费看 | 国产精品video爽爽爽爽 | 久久亚洲国产精品 | 国产乱码精品一区二区蜜臀 | 成人国产精品 | 少妇搡bbbb搡bbb搡忠贞 | 免费看久久| 亚洲精品综合欧美二区变态 | 久久人人爽人人 | 日韩在线观看三区 | 韩国av免费在线观看 | av电影在线观看完整版一区二区 | 国产婷婷久久 | 伊人天天干 | 亚洲区视频在线 | 高清视频一区二区三区 | a午夜电影| 久久免费视频3 | 99精品在线播放 | 精品资源在线 | 国产一级a毛片视频爆浆 | 亚洲午夜精品久久久久久久久久久久 | 色欲综合视频天天天 | 久久蜜臀av| 在线免费观看涩涩 | 久草精品网| 亚洲精品大片www | av免费观看网址 | 国产午夜三级一区二区三桃花影视 | 2018好看的中文在线观看 | 欧美激情视频一二区 | 免费麻豆网站 | 欧美精品黑人性xxxx | 午夜精品一区二区三区在线视频 | 91成人免费 | 五月天九九 | 中文 一区二区 | 正在播放国产91 | av不卡中文字幕 | avwww在线| 伊人va | 丁香花在线视频观看免费 | 人人澡人 | 狠狠色丁香婷婷综合久小说久 | 久久久久亚洲精品成人网小说 | 丝袜+亚洲+另类+欧美+变态 | 久久久影院一区二区三区 | 成人午夜电影网站 | 国产日韩欧美网站 | 日日干夜夜操视频 | 久久五月网 | av导航福利 | 日日爱夜夜爱 | 久久一区国产 | 成人午夜精品福利免费 | 99精品国产99久久久久久97 | 婷婷亚洲五月 | 午夜精品久久久久久久99 | 亚洲激情精品 | 日韩免费视频一区二区 | 欧美一区影院 | 久久99精品视频 | 成人国产精品免费观看 | 国产成人a亚洲精品 | 九九久久在线看 | 中文字幕第一页在线视频 | www.综合网.com| 国内偷拍精品视频 | 中文字幕av网站 | 99视频在线看 | 国产高清一区二区 | 欧美极品在线播放 | 91免费黄视频 | a√天堂资源 | 粉嫩av一区二区三区入口 | 麻豆国产精品va在线观看不卡 | av在线短片 | 亚洲小视频在线观看 | 天天亚洲 | 日韩欧美在线一区 | 国产又粗又长又硬免费视频 | 欧美激情综合五月色丁香 | 一区二区中文字幕在线 | 久久99欧美 | 色婷婷综合视频在线观看 | 在线影院 国内精品 | 亚洲国产欧美在线人成大黄瓜 | 91成人亚洲 | 色综合天天综合 | 久久精品国产一区二区 | 午夜影视一区 | 天天干夜夜爱 | 日韩精品影视 | 国产精品麻豆99久久久久久 | 欧美成人精品欧美一级乱黄 | 久久成人国产精品 | 日韩福利在线观看 | 久久五月激情 | 色丁香综合 | 欧美性受极品xxxx喷水 | 亚洲 欧洲av | 一区二区三区在线影院 | 天天操狠狠干 | 国产精品成人久久久 | 在线日本看片免费人成视久网 | 免费精品国产va自在自线 | 国产福利精品视频 | 久久夜夜操| 国产精品一区二区美女视频免费看 | 福利电影一区二区 | 国产中文字幕视频在线 | 成人精品一区二区三区中文字幕 | 欧美性一级观看 | 伊人五月在线 | 中文字幕av免费观看 | 成人av网页| 在线天堂视频 | 色欲综合视频天天天 | 婷婷精品国产欧美精品亚洲人人爽 | 综合激情| 国产精品久久亚洲 | 久久免费视频99 | 亚洲一级黄色 | 毛片一区二区 | 久久久精品视频成人 | 国产视频一区二区三区在线 | 美女视频是黄的免费观看 | 精品在线99 | 51久久夜色精品国产麻豆 | 人人草在线观看 | 久草网站| 国产在线观看你懂的 | 国产区高清在线 | 日韩性xxx| 成人影片在线播放 | 成人啊 v | 黄色毛片网站在线观看 | 成人在线播放av | 欧美国产三区 | 在线a人片免费观看视频 | 天天天操天天天干 | 日韩色在线| 国产精品久久久久久久久久 | 久久免费观看少妇a级毛片 久久久久成人免费 | 久久九九精品 | 成人一级免费视频 | 五月婷婷黄色网 | 在线观看日韩视频 | 美女激情影院 | 婷婷国产视频 | 久久久高清免费视频 | 亚洲a成人v | 在线播放 日韩专区 | 日韩亚洲精品电影 | 国产精品久久久久久av | www黄免费 | 特级毛片网 | 日韩电影在线一区 | 亚洲视频免费在线观看 | 亚洲精品看片 | 亚洲天堂网站 | 中文字幕亚洲国产 | www.黄色网.com| 九九热精品国产 | 欧美性色19p | 一级黄色片毛片 | 热久久国产精品 | 国产精品入口麻豆www | 国产在线毛片 | 婷婷激情欧美 | 区一区二区三在线观看 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 992tv在线观看| 亚洲精品国产精品国自产 | 日日日日日| 亚洲成人资源在线观看 | 国内少妇自拍视频一区 | 91精品在线免费视频 | 伊人五月综合 | 999国产 | 91精品一区二区三区蜜臀 | 97精品国产97久久久久久久久久久久 | 免费黄色看片 | 久久免费99| 亚洲区另类春色综合小说 | av在线电影网站 | 日本中文字幕电影在线免费观看 | 成人在线电影观看 | 99久久久久久久 | 99草在线视频 | www,黄视频 | 97激情影院 | 97精品在线视频 | 国产91精品一区二区麻豆亚洲 | 亚洲免费视频在线观看 | 精品一区二区视频 | 麻豆精品视频在线观看免费 | japanesexxxhd奶水| 亚洲国产日韩一区 | 色综合天天视频在线观看 | 国产日韩在线看 | 国产精品24小时在线观看 | 久久精品视频在线免费观看 | 亚洲精品国产综合99久久夜夜嗨 | 日韩在线一二三区 | 久久人人97超碰国产公开结果 | 中文字幕人成一区 | 丁香五婷 | 国内精品久久久久影院优 | 99久热精品 | 久久精品综合一区 | 欧美日韩在线视频一区二区 | 亚洲一级电影视频 | 国产福利91精品一区 | 国产一区二区网址 | 操久在线 | 911av视频| 国产精品一码二码三码在线 | 成年人毛片在线观看 | 国产视频一区二区在线 | 99精品视频在线免费观看 | 日日摸日日爽 | 麻豆视传媒官网免费观看 | 欧洲精品久久久久毛片完整版 | 一级成人免费 | 中文字幕制服丝袜av久久 | 最近久乱中文字幕 | 国产精品一码二码三码在线 | 亚洲午夜久久久综合37日本 | 激情大尺度视频 | 久久免费99精品久久久久久 | 国产精品18久久久久久久 | 国产成人精品在线观看 | 激情婷婷亚洲 | 亚洲精品在线一区二区 | 亚洲成人精品久久 | 久久国产午夜精品理论片最新版本 | 国产精品成人免费一区久久羞羞 | 日韩欧美一区二区三区在线 | 国内丰满少妇猛烈精品播放 | av在线免费在线观看 | 夜夜操天天干, | 一区中文字幕在线观看 | 久久久久久久av麻豆果冻 | 中文字幕亚洲精品在线观看 | 欧美色综合 | 中文字幕亚洲欧美日韩2019 | 国产精品99久久久精品 | 91理论电影 | 久久综合免费视频影院 | 欧美日韩视频免费 | 免费中文字幕 | 国内视频在线 | 日韩理论电影在线观看 | 日日摸日日添夜夜爽97 | 国产无遮挡又黄又爽在线观看 | 国产一区二区日本 | 91福利视频在线 | 深爱激情五月综合 | 精品久久久久久综合日本 | 欧美成人手机版 | 色在线免费观看 | 夜色资源站国产www在线视频 | 久青草影院 | 日韩av美女 | a成人v在线 | 白丝av免费观看 | 97人人模人人爽人人喊网 | 国产一区二区电影在线观看 | 1000部18岁以下禁看视频 | 去看片 | 午夜精品婷婷 | 九九九免费视频 | 免费看国产曰批40分钟 | 人人草在线视频 | 午夜婷婷在线播放 | 波多野结衣视频一区 | 99 精品 在线 | 久久久国产精品人人片99精片欧美一 | 日韩影视精品 | 九月婷婷色| 91麻豆精品国产91久久久久 | 免费看污网站 | 伊人婷婷网 | 狠狠的日 | 狠狠操操操 | 在线视频福利 | 亚洲经典精品 | 欧美日韩裸体免费视频 | 精品久久久久一区二区国产 | 99电影 | 91成人亚洲 | 久久视频这里只有精品 | 精品国产99国产精品 | 亚洲免费激情 | 天天射天天操天天色 | 国产精品麻豆果冻传媒在线播放 | 国产午夜不卡 | 久久久久网站 | av三级av| 日韩在线观看一区 | 国产婷婷久久 | 丝袜精品视频 | 五月天婷婷狠狠 | 伊人视频 | 午夜在线国产 | 国产一区二区电影在线观看 | wwxxxx日本| 免费在线一区二区三区 | 色爱区综合激月婷婷 | 91网免费观看 | 免费a级黄色毛片 | 六月天综合网 | 久久久九九| 成全在线视频免费观看 | 91高清完整版在线观看 | 亚洲精品中文在线资源 | 国产精品福利在线 | 久久精品人 | 99视频黄| 国产精品女人久久久久久 | 精品国内自产拍在线观看视频 | 国产精品第2页 | 91精品网站 | 欧美一区二区在线免费看 | 麻豆视频在线免费 | 欧美日韩一区二区在线 | 麻豆视频网址 | 五月开心网 | 最新中文字幕在线播放 | 午夜电影久久久 | 992tv成人免费看片 | 国产在线播放一区二区三区 | 日韩精品中文字幕一区二区 | 91精品在线免费视频 | 99热精品久久| 亚洲天天草 | 国产中文字幕视频在线观看 | 九色激情网 | 亚洲天堂网视频在线观看 | 91在线免费公开视频 | 五月婷婷在线综合 | 中文字幕在线观看免费高清完整版 | 91av中文字幕 | 69国产在线观看 | 一区二区久久久久 | 91.精品高清在线观看 | 中文字幕在线日本 | 免费黄色在线网站 | 蜜臀aⅴ国产精品久久久国产 | a天堂在线看 | 免费av网站在线 | 精品国产一区二区三区久久久久久 | 婷婷色在线观看 | 国产视频在线看 | 五月天亚洲综合 | 久久久午夜电影 | 国产在线色站 | 500部大龄熟乱视频使用方法 | 99精品久久99久久久久 | 狠狠狠狠狠狠操 | 99久久电影 | 午夜精品福利一区二区三区蜜桃 | 手机看片| 99久久99视频 | 久久精品99北条麻妃 | 成人a免费 | 欧美精品做受xxx性少妇 | 友田真希av | 一区二区免费不卡在线 | 免费观看9x视频网站在线观看 | 免费日韩电影 | 一区二区三区福利 | 天天干天天插伊人网 | 欧美影院久久 | 日韩在线影视 | 色综合久久88色综合天天6 | 日韩试看 | 99九九热只有国产精品 | se视频网址 | 久久久久女人精品毛片 | 亚洲日韩精品欧美一区二区 | 美女视频黄的免费的 | 日韩av中文字幕在线免费观看 | 中文字幕av网站 | 精品国产成人av | 特黄特色特刺激视频免费播放 | www好男人| 日韩中字在线观看 | 波多野结衣理论片 | 色综合天天视频在线观看 | 久久免费福利视频 | 国产一级黄色免费看 | 国产精品免费看久久久8精臀av | 国产区欧美| 日韩乱码中文字幕 | 天天舔夜夜操 | 中文字幕在线免费观看 | 亚洲电影在线看 | 91精品麻豆| 99热精品免费观看 | 久久99久久99精品中文字幕 | 四虎8848免费高清在线观看 | 日日操日日干 | 在线观看一区二区视频 | 九九九九热精品免费视频点播观看 | a'aaa级片在线观看 | 亚洲劲爆av | 日韩精品中文字幕在线观看 | 一区二区成人国产精品 | 欧美一级特黄aaaaaa大片在线观看 | 成人动态视频 | 久久精品视频在线 | 黄网在线免费观看 | 99精品黄色片免费大全 | 日韩欧美一区二区三区在线 | 在线精品一区二区 | 久久免费播放视频 | 色窝资源 | 国产高清精品在线观看 | 国产日韩欧美视频 | 天天色天天爱天天射综合 | 精品一区久久 | 黄a在线看 | 丁香婷婷深情五月亚洲 | 精品99999| 91人人爽久久涩噜噜噜 | 国产精品久久综合 | 国产午夜精品一区二区三区欧美 | 亚洲一区免费在线 | 91porny九色在线播放 | 国产精品国产三级国产aⅴ无密码 | 九色在线 | 黄色视屏免费在线观看 | 在线黄网站 | 九色91在线| 精品亚洲成a人在线观看 | 视频成人| 欧美-第1页-屁屁影院 | 手机色站 | 欧美日高清视频 | 国产一区二区在线观看免费 | 中文字幕在线播放一区二区 | 久久综合九色综合网站 | 亚洲精品影院在线观看 | 中文在线天堂资源 | 亚洲精品国产精品乱码不99热 | 91视频 - v11av | 国内精品久久久久久久影视麻豆 | 成人播放器 | 国产激情小视频在线观看 | 成人一级片视频 | 亚洲一区精品二人人爽久久 | 国产91小视频 | 91亚·色| 久久久久久久久黄色 | 国产va饥渴难耐女保洁员在线观看 | 不卡精品视频 | 色免费在线 | 91麻豆精品国产91 | 国产91aaa | 亚洲精品小区久久久久久 | 国产美女黄网站免费 | 亚洲精品动漫成人3d无尽在线 | 欧美日韩成人 | 日韩久久午夜一级啪啪 | 99热手机在线 | 国产精品国产亚洲精品看不卡 | 久久久精品一区二区 | 在线免费观看国产黄色 | 国产在线成人 | 天天干天天天天 | 深夜视频久久 | 麻豆精品视频在线 | 国产精品大片免费观看 | 国产精品麻豆视频 | 高清免费在线视频 | 91精品在线观看入口 | 中文字幕一区二区三 | 久久久久久久久久免费 | 成人午夜精品福利免费 | 中文字幕资源网 | www.av免费| 99久久电影| 天堂av最新网址 | 久久99在线视频 | 国产中文视 | 黄色aaa毛片| 91精品国产三级a在线观看 | 奇米影音四色 | 久久精品综合一区 | 久久精品9| 日日夜夜噜噜噜 | 国产精品99久久久精品免费观看 | 日本久久电影网 | 色婷婷综合激情 | 香蕉久草 | www婷婷 | 国内精品久久久 | 91日本在线播放 | 国产麻豆精品久久 | 国产很黄很色的视频 | 国产精品2区 | a在线观看国产 | 国外调教视频网站 | 一区久久久 | 色多多视频在线观看 | 国产日韩欧美视频 | 懂色av懂色av粉嫩av分享吧 | 国产精品91一区 | 欧美激情精品久久久久久免费 | 97在线观看免费观看高清 | 中文字幕高清有码 | 国产成人精品一区一区一区 | 精品免费一区二区三区 | 久久婷婷一区二区三区 | av三级在线免费观看 | 国产黄色片在线 | 国产精品一区二区三区久久久 | 97韩国电影| 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 国产黄色理论片 | 欧美少妇xxx | 五月婷婷精品 | 友田真希av| 奇米网在线观看 | 国产一级淫片在线观看 | 天堂成人在线 | 国产精品一级视频 | 激情五月***国产精品 | 久久成人精品视频 | 国产精品久久99 | 99r在线| 狠狠色伊人亚洲综合网站野外 | 欧美日韩在线网站 | 99热手机在线 | 久久久久久久久久伊人 | 国内精品久久久久久久久久 | 久草com | 91手机在线看片 | 毛片a级片| 波多野结依在线观看 | 天天射天天干天天 | 久久久精品久久 | 欧美成人h版在线观看 | 久久久久久久综合色一本 | 日韩三级精品 | 欧美性色黄大片在线观看 | 91超国产| 国产精品美女久久久免费 | 国产精品美女久久久久aⅴ 干干夜夜 | 日本在线观看视频一区 | 99热99| 免费激情网| 色99视频| 久草青青在线观看 | 亚洲天堂精品视频在线观看 | 97视频在线 | 亚洲综合狠狠干 | 免费69视频 | 日韩美女av在线 | 久草在线一免费新视频 | 亚洲精品综合一区二区 | 97免费公开视频 | 伊人五月天 | 午夜久久电影网 | 美女精品网站 | 国产成人亚洲在线电影 | 午夜精品久久久 | 日韩一区在线播放 | 国产精品涩涩屋www在线观看 | 黄色av播放 | www.久久com| 久久99国产精品久久 | 亚洲综合色视频在线观看 | 国产免费又爽又刺激在线观看 | 欧美日韩一级视频 | 久久精品国产亚洲aⅴ | 成年人在线 | 黄色特级毛片 | 91亚洲精品久久久蜜桃 | 精品国产精品久久一区免费式 | 国产精品一区二区在线观看 | 亚洲aⅴ在线 | 天堂av在线免费观看 | 国产一级久久 | 欧美亚洲一区二区在线 | 久久久久久久久黄色 | 免费在线播放黄色 | 免费成人av在线看 | 国产福利在线免费 | 色婷婷综合视频在线观看 | 91亚洲精品久久久蜜桃网站 | 久久精品美女视频 | 一区二区视频欧美 | 乱子伦av | 欧美性高跟鞋xxxxhd | 黄色aa久久| 新av在线 | 超碰在线公开免费 | 精品美女视频 | 精品国产免费人成在线观看 | 俺要去色综合狠狠 | 免费视频色 | 欧美人交a欧美精品 | av免费看电影 | 狠狠躁夜夜躁人人爽超碰91 | 激情亚洲综合在线 | 久久综合九色综合欧美就去吻 | 久久99精品一区二区三区三区 | 精品国产亚洲一区二区麻豆 | 欧美日韩国产一区二区三区在线观看 | 99热最新地址| 综合五月婷婷 | 国产精品综合久久 | 91亚洲精品久久久久图片蜜桃 | 欧美日韩精品在线视频 | 国产精品久久久久久久免费大片 | 免费观看成人网 | 日韩成人黄色av | 国产黄色播放 | 欧洲视频一区 | 亚洲视频一区二区三区在线观看 | 久青草视频在线观看 | 在线观看国产成人av片 | 久久久久亚洲精品国产 | 色九九视频 | 天天摸天天弄 | 视频在线精品 | 精品国产精品国产偷麻豆 | 国产又黄又猛又粗 | 国产精品久久久久久久av大片 | 97天天综合网 | 国产精品麻 | 黄色软件在线观看免费 | 有码中文在线 | avwww在线观看 | 久久久久欧美精品999 | 久久欧美精品 | 亚洲区精品视频 | 不卡国产在线 | 精品99免费视频 | 日本黄色免费播放 | 黄色在线观看网站 | 亚洲成av人片在线观看香蕉 | 久久福利精品 | 日韩亚洲在线 | 国产成人三级一区二区在线观看一 | 欧美黑人巨大xxxxx | 婷婷色综合色 | 在线观看成人福利 | 久久婷婷五月综合色丁香 | 色欧美视频 | 97人人超| 日韩天天干| 国产手机在线视频 | 免费在线成人 | 日韩精品 在线视频 | 久久99久久99精品 | 91视频免费播放 | 九九久久久久久久久激情 | 国产福利av | 在线天堂v| 一区二区三区在线观看 | 四虎成人在线 | 五月亚洲综合 | 香蕉日日 | 日韩欧美视频一区二区三区 | 国产精品久久久一区二区 | 在线观看免费日韩 | 福利视频导航网址 | 国产一区免费在线观看 | 日韩精品在线播放 | 国产成人av在线影院 | 久久tv| 天天舔天天射天天操 | 免费观看日韩av | 日韩理论电影网 | 国产精品免费一区二区 | 美女黄色网在线播放 | 久久精品视频免费观看 | 精品国产伦一区二区三区 | 爱爱av网| 国产91在线 | 美洲 | 日韩精品在线一区 | 中文在线免费观看 | 久久国产精品免费观看 | 成人动漫一区二区 | 亚洲精品国产免费 | 国产精品视频99 | 国产精品久久久久久久婷婷 | 西西444www大胆高清图片 | 亚洲国产剧情av | 日韩免费一区二区 | 三级黄色理论片 | 亚洲精品久久久蜜桃直播 | 天天夜操 | 热99在线 | 中文字幕成人一区 | 免费在线观看午夜视频 | 最近中文字幕免费视频 | 在线草| 亚洲精品国产精品国自产在线 | 中文字幕精品在线 | 色网站视频 | 欧美综合国产 | 91精品国产一区二区在线观看 | 一区二区电影网 | 日韩有码在线观看视频 | 91精品久久久久久久91蜜桃 | 日韩网站在线 | 青青看片| 欧美精品第一 | 麻豆一区二区三区视频 | 伊人天天干 | 97超碰人人干 | 黄色小说在线观看视频 | 国产精品久久久久久久久免费 | 天干啦夜天干天干在线线 | 色噜噜在线观看视频 | 亚洲精品久久久蜜臀下载官网 | 成人中文字幕在线观看 | 在线观看mv的中文字幕网站 | 国产三级在线播放 | 婷婷久久一区 | 国产精品1区2区在线观看 | 欧美一级视频免费看 | 欧美色婷 | 免费观看一级视频 | 日本三级久久久 | 国产精品成人av电影 | 中文字幕视频网站 | 久青草影院 | 亚洲美女免费视频 | 手机在线黄色网址 | 国产视频网站在线观看 | 五月激情站 | 日本乱视频 | 九色精品免费永久在线 | 国产美女免费看 | 亚洲精品午夜aaa久久久 | 欧美精品在线一区二区 | 久草网站在线 | 91视频高清免费 | 在线免费色 | 综合天天 | 久久美女精品 | 久久久九九| 国产成人在线精品 | 亚洲欧美乱综合图片区小说区 | 国产中文字幕一区二区 | 国产专区欧美专区 | 国产一区二区播放 | japanesexxxhd奶水| 伊人开心激情 | 日日添夜夜添 | 亚洲做受高潮欧美裸体 | 成年人在线看片 | 特级黄色视频毛片 | 一本一本久久a久久精品综合 | 国内免费久久久久久久久久久 | 三级动态视频在线观看 | 福利视频 | 中文视频在线看 | 欧美久久久 | 日韩特级毛片 | 婷婷丁香激情五月 | 看片一区二区三区 | 在线观看免费视频 | 欧美精品久久久久久久久久丰满 | 久久精品香蕉 | 91精品一 | 欧美日韩不卡在线 | 久久成电影 | 美女av免费看 | 黄色aaaaa| 国产亚洲精品久久网站 | 日韩特级黄色片 | 天天干天天操天天爱 | 国产小视频你懂的在线 | 丁香色婷 | 免费在线激情电影 | 97香蕉超级碰碰久久免费软件 | 午夜精品一区二区三区在线视频 | 免费视频二区 | 欧美性生活一级片 | 国产福利在线 | 日本中文字幕在线视频 | 国产精品久久久久久久久岛 | 日韩极品视频在线观看 | 天天人人综合 | 伊人精品影院 | 97视频免费观看 | 亚洲成年人av | 天天射狠狠干 | www91在线 | 久操视频在线播放 | 日韩在线国产精品 | 成年人免费看的视频 | 亚洲精品ww | 综合色天天| 天天拍天天操 | 麻豆精品国产传媒 | 亚洲国产人午在线一二区 | 国产日本在线 | 天天综合亚洲 | 黄色一集片 | 亚洲专区在线 | 国内精品亚洲 | 久久久电影网站 | 天天操福利视频 | 亚洲国产小视频在线观看 | 国产精品青青 | 最新中文字幕 | 911精品美国片911久久久 | 日韩免费不卡av | 天天天插| 日韩三级av | 在线免费观看黄色 | 在线观看国产www | 欧美日韩在线精品 | 国产中文字幕一区 | 亚洲九九九在线观看 | 亚洲视频在线观看 | 久久99久久99精品中文字幕 | 国产99久久九九精品免费 | 免费精品在线 | 国产精品手机在线 | av网在线观看 | 狠狠干,狠狠操 | 97热在线观看| 五月激情丁香 | 日韩精品一区二区三区在线视频 | 亚洲国产黄色片 | 欧美日韩国产二区三区 | 亚洲国产中文字幕 | 亚洲va欧美va国产va黑人 | 国产一区二区三区免费在线 | 波多野结衣在线中文字幕 | 中文字幕永久在线 | 国产永久免费观看 | 91成年视频 | av中文天堂在线 | 一区二精品 | 激情www | 丁香婷婷电影 | 天天插天天操天天干 | 国产明星视频三级a三级点| 久久精品精品电影网 | 亚洲a资源| 99综合影院在线 | 久久黄色美女 | av免费在线网 | 国产精品v a免费视频 | 999久久国精品免费观看网站 | 777奇米四色 | 免费久草视频 | 91久久久久久国产精品 | 婷婷丁香在线观看 | 国产亚洲va综合人人澡精品 | 成人黄在线 | 玖玖视频| 国产精品久久久久久高潮 | 亚洲精品视频免费在线 | 免费在线精品视频 | 亚洲精品高清在线观看 | 精品美女在线观看 | 黄色成人91 | 成人精品视频久久久久 | 国产午夜精品福利视频 | 99精品视频播放 | 91精品国产91久久久久久三级 | 色婷婷啪啪免费在线电影观看 | 国产麻豆果冻传媒在线观看 | 麻豆精品传媒视频 | 国产欧美精品xxxx另类 | 久久国产电影 | 亚洲国产精品成人综合 | av大全在线看 | 亚洲一区日韩精品 | 黄色www在线观看 | 狠狠干激情 | 91看成人 | 99中文字幕 | 在线观看日本高清mv视频 | 国产91丝袜在线播放动漫 | 精品一区 精品二区 | 91av在线视频播放 | 最新av网址在线观看 | 涩涩色亚洲一区 | 日韩电影久久 | 91精品导航| 国产精品男女啪啪 | 日韩欧美大片免费观看 | 日韩大陆欧美高清视频区 | 久久久久久国产精品免费 | 人人玩人人添人人澡超碰 | 狠狠干五月天 | 婷婷六月丁 | 91亚洲精品国偷拍自产在线观看 | 天天曰夜夜爽 | www.久久久.com | 激情视频一区二区三区 | 经典三级一区 | 欧美日韩aaaa| 欧美一区二区在线刺激视频 | 欧美有色| 日日夜夜网站 | 狠狠操精品 | 碰超在线观看 |