商业爬虫学习笔记day3
一. 付费代理发送请求的两种方式
第一种方式:
(1)代理ip,形式如下:
money_proxy = {"http":"username:pwd@192.168.12.11:8080"}
(2)代理的处理器
proxy_handler = urllib.request.ProxyHandler(money_proxy)
(3)通过处理器创建opener
opener = urllib.request.build_opener(proxy_handler)
(4)open发送请求
opener.open("http://www.baidu.com")
第二种方式发送付费ip地址
use_name = "abcname"
pwd = "123456"
proxy_money = "123.158.63.130:8888"
# 创建密码管理器,添加用户名和密码
password_manager = urllib.request.HTTPasswordMgrWithDefaultRealm()
# uri定位 uri>url
# url 资源定位符
password_manager.add_password(None, proxy_money, use_name, pwd)
# 创建可以验证代理ip的处理器
handle_auth_proxy = urllib.request.ProxyBasicAuthHandler(password_manager)
# 根据处理器创建opener
handle_quth = urllib.request..build_opener(handle_auth_proxy)
# 发送请求
response = opener_auth.open("http://www.baidu.com")
import urllib.request #付费的代理发送 #1.用户名密码(带着) #通过验证的处理器来发送 def money_proxy_use(): # #第一种方式付费代理发送请求 # #1.代理ip # money_proxy ={"http":"username:pwd@192.168.12.11:8080"} # #2.代理的处理器 # proxy_handler=urllib.request.ProxyHandler(money_proxy) # # #3.通过处理器创建opener # opener = urllib.request.build_opener(proxy_handler) # #4.open发送请求 # opener.open("http://www.baidu.com") # #第二种方式发送付费的ip地址 use_name = "abcname" pwd = "123456" proxy_money = "123.158.63.130:8888" #2.创建密码管理器,添加用户名和密码 password_manager = urllib.request.HTTPPasswordMgrWithDefaultRealm() #uri定位 uri>url #url 资源定位符 password_manager.add_password(None,proxy_money,use_name,pwd) #3.创建可以验证代理ip的处理器 handle_auth_proxy = urllib.request.ProxyBasicAuthHandler(password_manager) #4.根据处理器创建opener opener_auth = urllib.request.build_opener(handle_auth_proxy) #5.发送请求 response = opener_auth.open("http://www.baidu.com") print(response.read()) money_proxy_use()
二. 爬取自己公司的数据,做数据分析(admin)
import urllib.request def auth_nei_wang(): #1.用户名密码 user = "admin" pwd = "adimin123" nei_url = "http://192.168.179.66" #2.创建密码管理器 pwd_manager = urllib.request.HTTPPasswordMgrWithDefaultRealm() pwd_manager.add_password(None,nei_url,user,pwd) #创建认证处理器(requests) auth_handler = urllib.request.HTTPBasicAuthHandler(pwd_manager) opener = urllib.request.build_opener(auth_handler) response = opener.open(nei_url) print(response) auth_nei_wang()