Skip to content

Instantly share code, notes, and snippets.

@shanenoi
Created December 10, 2021 02:56
Show Gist options
  • Save shanenoi/3d45ee07a7915ba1a51e393bfc282277 to your computer and use it in GitHub Desktop.
Save shanenoi/3d45ee07a7915ba1a51e393bfc282277 to your computer and use it in GitHub Desktop.
teacher = ['0211002',
'0211003',
'0211004',
'0211005',
'0211006',
'0211007',
'0211008',
'0211009',
'0211011',
'0211012',
'0211015',
'0211016',
'0211018',
'0211019',
'0211020',
'0211021',
'0211022',
'0211023',
'0211025',
'0211026',
'0211027',
'0211028',
'0211029',
'0211030',
'0211031',
'0211032',
'0211033',
'0211034',
'0211035',
'0211037',
'0211038',
'0211039',
'0211043',
'0211044',
'0211046',
'0211047',
'0211048',
'0211050',
'0211051',
'0211052',
'0211053',
'0211055',
'0211056',
'0211057',
'0211058',
'0211059',
'0211060',
'0211061',
'0211062',
'0211064',
'0211065',
'0211066',
'0211067',
'0211068',
'0211069',
'0211070',
'0211072',
'0211073',
'0211074',
'0211075',
'0211076',
'0211077',
'0211079',
'0211080',
'0211081',
'0211082',
'0211085',
'0211086',
'0211175',
'0211176',
'0211177',
'0211178',
'0211179',
'0211180',
'0211181',
'0211186',
'0211189',
'0211194',
'0211195',
'0211196',
'0211197',
'0211204',
'TG001',
'TG002',
'TG003',
'TG004',
'TG005',
'TG006',
'TG007',
'TG008',
'TG009',
'TG010',
'TG011',
'TG012',
'TG013',
'TG014',
'TG015',
'TG016',
'TG017',
'TG018',
'TG019',
'TG020',
'TG021',
'TG022',
'TG023',
'TG024',
'TG025',
'TG027',
'TG028',
'TG029',
'TG030',
'TG031',
'TG032',
'TG033',
'TG034',
'TG035',
'TG036',
'TG037',
'TG038',
'TG039',
'TG040',
'TG041',
'TG042',
'TG043',
'TG044',
'TG045',
'TG046',
'TG047',
'TG048',
'TG049',
'TG050',
'TG051',
'TG052',
'TG053',
'TG054',
'TG055',
'TG056',
'TG057',
'TG058',
'TG059',
'TG060',
'TG061',
'TG062',
'TG063',
'TG064',
'TG065',
'TG066',
'TG067',
'TG068',
'TG069',
'TG070',
'TG071',
'TG072',
'TG073',
'TG074',
'TG075',
'TG076',
'TG077',
'TG078',
'TG079',
'TG080',
'TG081',
'TG082',
'TG083',
'TG084',
'TG085',
'TG086',
'TG087',
'TG088',
'TG089',
'TG090',
'TG091',
'TG092',
'TG093',
'TG094',
'TG095',
'TG096',
'TG097',
'TG098',
'TG099',
'TG100',
'TG101',
'TG102',
'TG103',
'TG104',
'TG105',
'TG106',
'TG107',
'TG108',
'TG109',
'TG110',
'TG111',
'TG112',
'TG113',
'TG114',
'TG115',
'TG116',
'TG117',
'TG118',
'TG119',
'TG120',
'TG121',
'TG122',
'TG123',
'TG124',
'TG125',
'TG126',
'TG127',
'TG128',
'TG129',
'TG130',
'TG131',
'TG132',
'TG133',
'TG134',
'TG135',
'TG136',
'TG137',
'TG138',
'TG139',
'TG140',
'TG141',
'TG142',
'TG143',
'TG144',
'TG145',
'TG146',
'TG147',
'TG148',
'TG149',
'TG150',
'TG151',
'TG152',
'TG153',
'TG154',
'TG155',
'TG156',
'TG157',
'TG158',
'TG159',
'TG160',
'TG0001',
'TG0002',
'TG0003',
'TG0004',
'TG0005',
'TG0006',
'TG0007',
'TG0008',
'TG0009',
'TG0010',
'TG0011',
'TG0012',
'TG0013',
'TG0014',
'TG0015',
'TG0016',
'TG0017',
'TG0018',
'TG0019',
'TG0020',
'TG0021',
'TG0022',
'TG0023',
'TG0024',
'TG0026',
'TG0027',
'TG0028',
'TG0029',
'TG0030',
'TG0031',
'TG0032',
'TG0033',
'TG0034',
'TG0035',
'TG0036',
'TG0037',
'TG0038',
'TG0039',
'TG0040',
'TG0041',
'TG0042',
'TG0043',
'TG0044',
'TG0045',
'TG0046',
'TG0047',
'TG0048',
'TG0050',
'TG0051',
'TG0052',
'TG0053',
'TG0054',
'TG0055',
'TG0056',
'TG0057',
'TG0058',
'TG0059',
'TG0060',
'TG0061',
'TG0062',
'TG0063',
'TG0064',
'TG0065',
'TG0066',
'TG0067',
'TG0068',
'TG0069',
'TG0070',
'TG0071',
'TG0072',
'TG0073',
'TG0074',
'TG0075',
'TG0076',
'TG0077',
'TG0078',
'TG0079',
'TG0080',
'TG0081',
'TG0082',
'TG0083',
'TG0084',
'TG0085',
'TG0086',
'TG0087',
'TG0088',
'TG0089',
'TG0090',
'TG0091',
'TG0092',
'TG0093',
'TG0094',
'TG0095',
'TG0096',
'TG0097',
'TG0098',
'TG0099',
'TG0100',
'TG0101',
'TG0102',
'TG0103',
'TG0104',
'TG0105',
'TG0106',
'TG0107',
'TG0108',
'TG0109',
'TG0110',
'TG0111',
'TG0112',
'TG0113',
'TG0114',
'TG0115',
'TG0116',
'TG0117',
'TG0118',
'TG0119',
'TG0120',
'TG0121',
'TG0130',
'TG0131',
'TG0149',
'TG0210',
'TG0211',
'TG0212',
'TG0213',
'TG0214',
'TG0215',
'TG0216',
'TG0217',
'TG0218',
'TG0219',
'TG0220',
'TG0221',
'TG0222',
'TG0223',
'TG0224',
'TG0226',
'TG0228',
'TG0229',
'TG0230',
'TG0231',
'TG0232',
'TG0233',
'TG0234',
'TG0235',
'TG0236',
'TG0237',
'TG0238',
'TG0239',
'TG0240',
'TG0241',
'TG0242',
'TG0243',
'TG0244',
'TG0245',
'TG0246',
'TG0247',
'TG0248',
'TG0250',
'TG0252',
'TG0253',
'TG0254',
'TG0255',
'TG0257',
'TG0258',
'TG0268',
'TG0269',
'TG0270',
'TG0271',
'TG0272',
'TG0273',
'TG0274',
'TG0275',
'TG0276',
'TG0277',
'TG0278',
'TG0279',
'TG0280',
'TG0281',
'TG0283',
'TG0284',
'TG0285',
'TG0286',
'TG0287',
'TG0288',
'TG0289',
'TG0290',
'TG0291',
'TG0292',
'TG0293',
'TG0294',
'TG0295',
'TG0296',
'TG0297',
'TG0298',
'TG0299',
'TG0300',
'TG0301',
'TG0302',
'TG0303',
'TG0304',
'TG0305',
'TG0306',
'TG0307',
'TG0308',
'TG0309',
'TG0310',
'TG0311',
'TG0312',
'TG0313',
'TG0314',
'TG0315',
'TG0316',
'TG0317',
'TG0318',
'TG0319',
'TG0320',
'TG0321',
'TG0322',
'TG0323',
'TG0324',
'TG0325',
'TG0326',
'TG0327',
'TG0328',
'TG0329',
'TG0330',
'TG0331',
'TG0332',
'TG0333',
'TG0334',
'TG0335',
'TG0336',
'TG0337',
'TG0338',
'TG0339',
'TG0340',
'TG0341',
'TG0342',
'TG0343',
'TG0344',
'TG0345',
'TG0346',
'TG0347',
'TG0348',
'TG0349',
'TG0350',
'TG0351',
'TG0352',
'TG0353',
'TG0354',
'TG0355',
'TG0356',
'TG0357',
'TG0358',
'TG0359',
'TG0360',
'TG0361',
'TG0362',
'TG0363',
'TG0364',
'TG0365',
'TG0366',
'TG0367',
'TG0368',
'TG0369',
'TG0370',
'TG0371',
'TG0372',
'TG0373',
'TG0374',
'TG0375',
'TG0376',
'TG0377',
'TG0378',
'TG0379',
'TG0380',
'TG0381',
'TG0382',
'TG0383',
'TG0384',
'TG0385',
'TG0386',
'TG0387',
'TG0388',
'TG0389',
'TG0390',
'TG0391',
'TG0392',
'TG0393',
'TG0394',
'TG0395',
'TG0396',
'TG0397',
'TG0398',
'TG0399',
'TG0400',
'TG0401',
'TG0402',
'TG0403',
'TG0404',
'TG0405',
'TG0406',
'TG0407',
'TG0408',
'TG0409',
'TG0410',
'TG0411',
'TG0412',
'TG0413',
'TG0414',
'TG0415',
'TG0416',
'TG0417',
'TG0418',
'TG0419',
'TG0420',
'TG0421',
'TG0422',
'TG0423',
'TG0424',
'TG0425',
'TG0426',
'TG0427',
'TG0428',
'TG0429',
'TG0430',
'TG0431',
'TG0432',
'TG0433',
'TG0434',
'TG0435',
'TG0436',
'TG0437',
'TG0438',
'TG0439',
'TG0440',
'TG0441',
'TG0442',
'TG0443',
'TG0445',
'TG0446',
'TG0447',
'GV/N-20164',
'GV/N-20165',
'GV/N-20166',
'GV/N-20172',
'GV/N-20173',
'GV/N-20176',
'GV/N-20178',
'GV/N-20179',
'GV/N-20180',
'GV/N-20181',
'GV/N-20182',
'GV/N-20183',
'GV/N-20184',
'GV/N-20185',
'GV/N-20188',
'GV/N-20191',
'GV/N-20195',
'GV/N-20197',
'GV/N-20198',
'GV/N-20199',
'GV/N-20202',
'GV/N-20204',
'GV/N-20205',]
final_result = []
data = teacher.map(async (item) => {
var x = await fetch(`https://uis.ptithcm.edu.vn/default.aspx?page=thoikhoabieu&sta=1&id=${item}`, {
"headers": {
"accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"accept-language": "en-US,en;q=0.9,vi;q=0.8",
"cache-control": "max-age=0",
"if-modified-since": "Fri, 10 Dec 2021 01:43:35 GMT",
"sec-ch-ua": "\" Not A;Brand\";v=\"99\", \"Chromium\";v=\"96\", \"Google Chrome\";v=\"96\"",
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": "\"Linux\"",
"sec-fetch-dest": "document",
"sec-fetch-mode": "navigate",
"sec-fetch-site": "none",
"sec-fetch-user": "?1",
"upgrade-insecure-requests": "1"
},
"referrerPolicy": "strict-origin-when-cross-origin",
"body": null,
"method": "GET",
"mode": "cors",
"credentials": "include"
});
var html = await x.text();
var content = (/<span id="ctl00_ContentPlaceHolder1_ctl00_lblContentMaSV"[^\n].+/g).exec(html);
var result = [];
if (content) {
content = content[0]
result = content.replaceAll(/<[^<>]+>/g, '|').split('|').filter(i => (i && !i.includes('Tên') && !i.includes('Ten')))
for (const match of html.matchAll(/<td align='left'>([^<>]+)</g)) {
result.push(match[1]);
}
for (const match of html.matchAll(/(D\d{2}[A-Z]{3,}\d+-N)/g)) {
result.push(match[0]);
}
result = [...new Set(result)]
if (result.length > 2) {
final_result.push(result)
}
}
})
@shanenoi
Copy link
Author

đây là cách tui tránh mấy môn có giảng viên khó 😶‍🌫️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment