Rumah > Soal Jawab > teks badan
需要爬取一个登录以后的socket连接,这个socket会不定期的传数据到网页上,然后我目前只能通过不断刷新网页去完成,有没有什么好的办法可以去爬取需要网页登录后的socket呢?
===
继续描述:
模拟登录 (selenium模拟登录)
伪造UA,刷新cookies,刷新sessionID(通过不停的登录登出换cookie,定时结束webdriver再重启来刷新sessionID)
通过Xpath 来获取页面的数据(lxml)
他的socket数据是这样传给浏览器的,我就是想用python搞个socket client接进这个socket,然后等服务器推给我数据.
总的来说,爬一个时间点的数据并不困难,但是对于长连接的持续爬虫,持续监控,响应式监控我在网上找不到好的办法,如果是设置定时任务去爬虫,则当采样周期过小的时候(小于1秒),则运算等成本过高且容易被封掉,有没有什么好的办法呢
PHP中文网2017-04-18 10:32:17
HTTP adalah tanpa kewarganegaraan, jadi status 登陆以后
anda ditentukan dengan menghantar satu atau lebih nilai istimewa ke pelayan (biasanya dalam medan kuki pengepala mesej).
Tangkap paket HTTP, dan kemudian bawa nilai istimewa ini semasa mensimulasikan.
Kemas kini kandungan:
Lihat Kod Status Ini bermakna sambungan telah digantikan oleh soket web, jadi halaman ini mesti disediakan oleh pihak lain. Anda boleh melihat kod sumber halaman, mesti ada kandungan seperti var ws = new WebSocket("ws://ip:3000");
.
Lihat keperluan pelanggan lain, dan kemudian tulis semula fungsi panggil balik ws.onmessage
Kandungan fungsi ini adalah mengikut budi bicara anda. Anda boleh menggunakannya untuk menentukan sama ada kandungan baharu telah dikembalikan atau meminta pelayan lain memproses kandungan baharu.
Anda boleh melihat bahagian 客户端
artikel ini Sembang masa nyata pada halaman web menggunakan PHP untuk melaksanakan soket web, dan cuba mengubah suainya untuk memenuhi keperluan anda.