1.学习python

urllib2 常用方法

urlopen(url, data, timeout)

urllib2.Request()

urllib.urlencode()

params = {}

get : url + "?" + params

http:请求分析

User-Agent : 有些服务器或 Proxy 会通过该值来判断是否是浏览器发出的请求

Content-Type : 在使用 REST 接口时,服务器会检查该值,用来确定 HTTP Body 中的内容该怎样解析。

application/xml : 在 XML RPC,如 RESTful/SOAP 调用时使用

application/json : 在 JSON RPC 调用时使用

application/x-www-form-urlencoded : 浏览器提交 Web 表单时使用

在使用服务器提供的 RESTful 或 SOAP 服务时, Content-Type 设置错误会导致服务器拒绝服务

import urllib

import urllib2

url = 'http://www.server.com/login'

user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'

values = {'username' : 'cqc', 'password' : 'XXXX' }

headers = { 'User-Agent' : user_agent }

data = urllib.urlencode(values)

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

response = urllib2.urlopen(request)

page = response.read()

对付”反盗链”的方式,对付防盗链,服务器会识别headers中的referer是不是它自己,如果不是,有的服务器不会响应,所以我们还可以在headers中加入referer

代理服务器设置

import urllib2

enable_proxy = True

proxy_handler = urllib2.ProxyHandler({"http" : 'http://some-proxy.com:8080'})

null_proxy_handler = urllib2.ProxyHandler({})

if enable_proxy:

opener = urllib2.build_opener(proxy_handler)

else:

opener = urllib2.build_opener(null_proxy_handler)

urllib2.install_opener(opener)

使用DebugLog

import urllib2

httpHandler = urllib2.HTTPHandler(debuglevel=1)

httpsHandler = urllib2.HTTPSHandler(debuglevel=1)

opener = urllib2.build_opener(httpHandler, httpsHandler)

urllib2.install_opener(opener)

response = urllib2.urlopen('http://www.baidu.com')

cookie Cookielib

import urllib2

import cookielib

#声明一个CookieJar对象实例来保存cookie

cookie = cookielib.CookieJar()

#利用urllib2库的HTTPCookieProcessor对象来创建cookie处理器

handler=urllib2.HTTPCookieProcessor(cookie)

#通过handler来构建opener

opener = urllib2.build_opener(handler)

#此处的open方法同urllib2的urlopen方法,也可以传入request

response = opener.open('http://www.baidu.com')

for item in cookie:

print 'Name = '+item.name

print 'Value = '+item.value

保存cookie到文件

import cookielib

import urllib2

#设置保存cookie的文件,同级目录下的cookie.txt

filename = 'cookie.txt'

#声明一个MozillaCookieJar对象实例来保存cookie,之后写入文件

cookie = cookielib.MozillaCookieJar(filename)

#利用urllib2库的HTTPCookieProcessor对象来创建cookie处理器

handler = urllib2.HTTPCookieProcessor(cookie)

#通过handler来构建opener

opener = urllib2.build_opener(handler)

#创建一个请求,原理同urllib2的urlopen

response = opener.open("http://www.baidu.com")

#保存cookie到文件

cookie.save(ignore_discard=True, ignore_expires=True)

从文件中获取Cookie并访问

import cookielib

import urllib2

#创建MozillaCookieJar实例对象

cookie = cookielib.MozillaCookieJar()

#从文件中读取cookie内容到变量

cookie.load('cookie.txt', ignore_discard=True, ignore_expires=True)

#创建请求的request

req = urllib2.Request("http://www.baidu.com")

#利用urllib2的build_opener方法创建一个opener

opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))

response = opener.open(req)

print response.read()

BeautifulSoup 类型

Tag

NavigableString

BeautifulSoup

-Comment

遍历文档树

tag 的 .content 属性可以将tag的子节点以列表的方式输出

.children

.descendants 属性可以对所有tag的子孙节点进行递归循环

.strings 获取多个内容

.stripped_strings 可以去除多余空白内容

.parent 父节点

. parents 所有的父节点

.next_sibling .previous_sibling 兄弟节点

.next_siblings .previous_siblings 所有的兄弟节点

10 .next_element .previous_element 前后节点

.next_elements .previous_elements 所有的前后节点

搜索文档树

find_all( name , attrs , recursive , text , **kwargs )

用法类似

自学python从零开始学_新手学习python-从零开始学习相关推荐

  1. 怎么解决python遇到问题_新手常见Python错误及异常解决处理方案

    新手常见Python错误及异常解决处理方案,异常,错误,语句,子句,代码 新手常见Python错误及异常解决处理方案 易采站长站,站长之家为您整理了新手常见Python错误及异常解决处理方案的相关内容 ...

  2. CSDN周赛第39期:赢签名实体书和图书《从零开始学算法(基于Python)》

    本场竞赛由「电子工业出版社 & CSDN」联合主办. 一.报名方式 第39期周赛报名地址,3月22日 19点开考(周三):https://edu.csdn.net/contest/detail ...

  3. 新手python爬虫代码_新手小白必看 Python爬虫学习路线全面指导

    爬虫是大家公认的入门Python最好方式,没有之一.虽然Python有很多应用的方向,但爬虫对于新手小白而言更友好,原理也更简单,几行代码就能实现基本的爬虫,零基础也能快速入门,让新手小白体会更大的成 ...

  4. 新手学python书籍推荐_新手学python看哪本书

    对于零基础入门的人来说,对于Python的学习还是有点懵懵懂懂的,如果有一些书籍先看看来引导,学起来难度也会减低很多!所以,学python倒是向大家推荐这些书籍! 1.<PYTHON基础教程(第 ...

  5. python37从零开始学_从零开始学Python【37】--朴素贝叶斯模型(理论部分)

    [知识铺垫] 在介绍如何使用贝叶斯概率公式计算后验概率之前,先回顾一下概率论与数理统计中的条件概率和全概率公式: 如上等式为条件概率的计算公式,表示在已知事件A的情况下事件B发生的概率,其中P(AB) ...

  6. python仿真搭建_仿真秀学院|从零开始学ANSA二次开发:如何利用Designer搭建窗口,含安装步骤...

    原标题:仿真秀学院|从零开始学ANSA二次开发:如何利用Designer搭建窗口,含安装步骤 作者 | 团长 仿真秀专栏作者 首发 |仿真秀App 导读:大家好,我是团长,是一名CAEer,还是一名C ...

  7. python那么多库怎么学_为什么大家都在学习python?原因在这里

    原标题:为什么大家都在学习python?原因在这里 为什么大家都在学习python? python真的是天生丽质难自弃呀,难怪大家都在学python,这就跟所有姑娘都在追求高富帅,所有男生都在渴望白富 ...

  8. python自学入门12周_新手怎么100天入门Python?

    作为目前最火也是最实用的编程语言,Python 不仅是新手入门程序界的首选,也逐渐成为了从大厂到小厂,招牌需求 list 的必要一条. 但学 Python 这件事情,你可能和大多数人一样,下了一百次决 ...

  9. 少儿学python书籍推荐_儿童节,我们从零开始——Python入门资源推荐

    原创 2017-06-01 玄魂工作室 玄魂工作室 今天是六一儿童节,首先祝所有的小朋友身体健康,能永远生活在一个没有战争,没有压迫的世界里,永远快乐. 上一篇文章,很多人都对Python的各种书籍感 ...

最新文章

  1. 服务器连接超时不响应怎么回事,勇者斗恶龙x服务器没有响应连接超时解决方法...
  2. SAP MM 移动类型343不开放给业务人员之思考
  3. Android基础教程(四)之-----取得手机屏幕大小DisplayMetrics的应用
  4. 按钮点击WIN8 磁贴效果
  5. python删除指定文件夹下文件和文件夹的方法
  6. sql xp_cmdshell
  7. python支持gui编程_Python GUI编程完整示例
  8. bat文件打开一闪就没了_window文件夹目录树的创建
  9. Spark基础学习笔记05:搭建Spark Standalone模式的集群
  10. 08TensorFlow2.0基础--8.4部分采样
  11. java基础知识5-二进制
  12. Python:matplotlib绘制条形图
  13. 夏普SHARP-10-80cm红外测距传感器-GP2Y0A21YK0F-性能测试
  14. 只读更新全程图解教程(转)
  15. MongoDB是什么?看完你就知道了!
  16. 建网站购买服务器,建网站购买服务器
  17. Unity3D游戏引擎最详尽基础教程
  18. 使用Banner制作轮播图
  19. dmaengine,dmatest, DW_DMAC driver
  20. 求次方的c语言程序,C语言编程求13的13次方的最后三位数

热门文章

  1. Machine Schedule为什么UVA过了POJ过不了
  2. emacs的使用方法
  3. Java使用Redis实现分布式锁来防止重复提交问题
  4. 浅谈微信smali注入
  5. 学习vue.js 第一天
  6. 读取XML文件的节点内的内容
  7. 【转】PB实现在通知区域添加图标
  8. VisualC++2010系列课程
  9. vue从入门到精通之高级篇(一)vue-router的高级用法
  10. Spring 源码分析之AbstractApplicationContext源码分析