美文网首页
2018-06-23

2018-06-23

作者: baixuetang11 | 来源:发表于2018-09-08 15:14 被阅读0次

python2

网页请求方式方法1:需要设置头信息时,需要配合urllib.urlencode(data)使用

import urllib2

req = urllib2.Request(url)此时可以设置传递头信息

response = urllib2.urlopen(req)

网页请求方式方法2:不需要头信息时

import urllib2

response = urllib2.urlopen(url)

html = response.read()

使用代理

import urllib2

proxy=urllib2.ProxyHandler({'http':'127.0.0.1:8087'})

opener=urllib2.build_opener(proxy,)

response=opener.open(url)

网页请求方式方法3:使用cookies,我12306就是使用此方法

import urllib2

import urllib

import cookielib

from json import loads

c=cookielib.LWPCookieJar()

cookie=urllib2.HTTPCookieProcessor(c)

opener=urllib2.build_opener(cookie)

urllib2.install_opener(opener)

req = urllib2.Request(url,data=data,headers=headers)

html = opener.open(req).read()#在open()只用req参数,否则运行不成功

网页请求方式方法4:

requests

requests.get()

requests.post()

ses=requests.session()

ses.get()

ses.post()

python3:

import urllib.request

方法1

response=urllib.request.urlopen(url)

方法2

req=urllib.request.Request(url)此时可以设置传递头信息

response=urllib.request.urlopen(req)

方法3使用代理IP

import urllib.request

proxy=urllib.request.ProxyHandler({

'http':'129.46.13.157:8080',

'https':'182.30.179.29:9797'

})

opener=urllib.request.build_opener(proxy_handler)

response=opener.open(url)

response.read()

方法4: 

requests

requests.get()

requests.post()

ses=requests.session()

ses.get()

ses.post()

import requests

proxies={

'http':'ip:端口',

'https':'ip:端口',

}

requests.get(url,proxies=proxies)


方法5使用cookies

import urllib.request

from http import cookiejar

参考玩转python网络爬虫第5章49页

方法6

from urllib.request import HTTPPasswordMgrWithDefaultRealm,HTTPBasicAuthHandler,buile_opener

from urllib.error import URLError

username='username'

password='passowrd'

p=HTTPPasswordMgrWithDefaultRealm()

p.add_password(None,url,username,password)

auth_handler=THHPBasicAuthHandler(p)

opener=build_opener(auth_handler)此处可以传入代理

try{

        result=opener.open(url)

        html=result.read().decode('utf-8')

        print(html)

except URLError as e:

        print(e.reason)

}

其他模块方法

httplib/urllib用得比较少,初识网络爬虫P77

相关文章

  • 华为

    华为公司有那些部门 数据大学 2018-06-23 11:04 · 字数 1501 · 阅读 2 · 日记本 1、...

  • 日精进打卡(第351天)

    2018-06-23 姓名:李义 公司:........ 组别:259期利他二组 【知~学习】 背诵 六项精进大纲...

  • 世上好人那么少,不要随便对人推心置腹

    对人推心置腹 薇薇姐pmm 2018-06-23 18:48 · 字数 1123 · 阅读 0 · 日记本 世上好...

  • 面朝大海的博客

    多点客观,多点敬畏,多点爱;少点责问,少点功利,少点私。 2018-06-23 13:49阅读:702 最近,时不...

  • 2018-06-24

    《番茄工作法图解读》后感 晓春的蜗居 2018-06-23 22:35 · 字数 272 · 阅读 1 · 日记本...

  • 2018-06-23

    2018-06-23 字数 476· 阅读 114· 日记本 姓名:周富强 公司:厦门大科机械有限公司 日精进打卡...

  • 电影记录

    碟中谍6:全面瓦解 2018-09-15 我不是妖神 208-07-17 超人总动员2 2018-06-23 头...

  • 投射+感赏226感觉源点丰盛与否决定事情成败

    曾婧_六中换玩 字数 2045 · 阅读 517 2018-06-23 23:52 知道儿子近期情绪不是很好,我主...

  • 2018-06-23

    2018-06-23 姓名:苏晶晶 单位:中天建设集团有限公司万科小镇项目部 【日精进打卡第20天】 【知~学习】...

  • 红魔冲击连胜 卢卡库破纪录

    太子体育太子体育今天 世界杯:比利时(中)VS突尼斯 开赛时间:2018-06-23 20:00 杯赛积分排名: ...

网友评论

      本文标题:2018-06-23

      本文链接:https://www.haomeiwen.com/subject/mgndyftx.html