Python 设置 IP 代理 访问网页 ( 用户名密码验证代理 )

需求如下:

待爬取的页面
待爬取的页面
想爬取的部分
想爬取的部分
查看源码,在Js中有返回
在这里插入图片描述

正常访问时候,使用Firefox代理插件 FoxyProxy 设置代理才能访问到的。

浏览器代理

本来想用 Selinum打开 FireFox,然后爬取表格,。不过卡在了插件,和插件自动 填充账号密码这块儿,后来发现直接用 urlib 做网络请求 ,然后bs4 解析Js获取数据更方便, 代码如下:

import urllib.request as rproxy_handler = r.ProxyHandler({'http': 'user:passwd@代码IP:端口号'})
opener = r.build_opener(proxy_handler)
r.install_opener(opener)
response = r.urlopen('http://yarn02-prd3.xxx.com:8088/cluster/apps/RUNNING')
html = response.read()
# 解析
bs = BeautifulSoup(html, "lxml") 
appsTableData = bs.findAll('script', {'type': 'text/javascript'})[-1]

附上一个额外的需求,每小时爬取一次,用 apscheduler

import os
from apscheduler.schedulers.blocking import BlockingSchedulerdef monitor():os.system(r"python haddop_moni.py")if __name__ == '__main__':scheduler = BlockingScheduler()# 采用固定时间间隔(interval)的方式,每隔1H执行一次scheduler.add_job(monitor, 'interval', seconds=3600)scheduler.start()try:scheduler.start()except (KeyboardInterrupt, SystemExit):pass


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部