30/09/2018, 22:54

Lấy danh sách điểm của nhiểu sinh viên trên 1 trang web?

Chào mọi người. Có 1 trang web giúp tra cứu điểm thi của sinh viên. Web đấy đơn giản ( dt.ptitvl.com ) chỉ có 1 cái form để nhập mã sinh viên. Sau khi nhấp xem điểm thì điểm của sinh viên sẽ hiện ra. Hiện tại mình đã biết cách lấy dữ liệu rồi ( Mình dùng java + jsoup ). Nhưng vấn đề là có nhiều sinh viên. mình không tìm được cái url để xem điểm của từng sinh viên ( ví dụ dt.ptitvl.com/XemDiem?mssv=B13DCCN111 ). Nên không thể làm tự động toàn bộ danh sách sinh viên được. Có cách nào để tìm được cái url ấy không ? Cảm ơn mọi người.

Nguyen Minh Quan viết 01:06 ngày 01/10/2018

Những trang web dạng này bạn không thể lấy url được. Để lấy được dữ liệu bạn phải gửi 1 POST request theo form định sẵn của nó. Trong VD của bạn thì form này là:

mssv:B13DCCN112

Mình chỉ biết dùng python nên không thể nói cụ thể hơn được

nullnguyen viết 01:03 ngày 01/10/2018

Cái này có cần phải học về socket không bạn ?

Nguyen Minh Quan viết 01:00 ngày 01/10/2018

mình nghĩ là không cần, bạn thử tìm thư viện java hỗ trợ gửi request xem sao

nullnguyen viết 00:55 ngày 01/10/2018

Ok cảm ơn bạn nhiều nhé. Có gì mình sẽ hỏi thêm

nullnguyen viết 00:59 ngày 01/10/2018

cậu ơi mình tìm được cách send request rồi. Nhưng cái url của server để gửi request thì sao hả cậu. Nếu url là dt.ptitvl.com thì response không có data gì về điểm cả …

nullnguyen viết 00:54 ngày 01/10/2018

mình có vào xem js của web thì thấy đoạn này:

$.ajax({
			type: "GET",
			url: "ThongKe/XemDiem",
			data: str_string,
			cache: false,
			statusCode: {
				404:function(){
					return;
				}
			},
			success: function(html){
				
			}
		});

mình đã thử cái url là: dt.ptitvl.com/ThongKe/XemDiem?mssv=B13DCCN111 nhưng vẫn không được

Nguyen Ca viết 01:08 ngày 01/10/2018

Củ Chuối viết 01:10 ngày 01/10/2018

dùng HttpURLConnection để tạo post request lên http://dt.ptitvl.com/Ajax/MarkInfo với body là mssv:B13DCCN111 nhớ thêm header X-Requested-With:XMLHttpRequest
Dùng F12 của chorme phần network bắt gói tin là ra thôi bạn.
chi tiết : Stackoverflow

Sau khi read đc source của web thì đưa source đó vào jsoup để phân tích là xong.

nullnguyen viết 00:55 ngày 01/10/2018

Mình hiểu rồi. Cảm ơn hai bạn rất nhiều

abcxyz viết 01:10 ngày 01/10/2018

dự là bạn muốn lấy danh sách điểm để xem top học bổng à
lấy được thì gửi mình với nhá tks
mình cần xem danh sách điểm D14 khoa công nghệ kì vừa rồi

nullnguyen viết 01:03 ngày 01/10/2018

haha rảnh k có gì làm nên nghiên cứu thêm thôi bạn

abcxyz viết 01:04 ngày 01/10/2018

nghiên cứu được thì cho mình xin ds điểm kì vừa rồi của D14 khoa cn với nhá
chả là mình muốn xem bạn mình có được học bổng k, tại điểm mấp mé 3.05
mà trường lại k public ds điểm, hb thì tới kì sau nữa mới biết tks

nullnguyen viết 01:03 ngày 01/10/2018

ok c lúc nào xong mình gửi cho

Bài liên quan
0