zoukankan      html  css  js  c++  java
  • python爬虫入门

    if 条件语句

    a=3
    if a>3:
        print("ok")
    elif a==3:
        print("no")
    else:
        print("dagag")

    循环语句:
    list1=["aaa","eee"];
    i=0;
    while i<len(list1):
        print(list1[i])
        i+=1
    for it in list1:
        print(it)

    class Person:
        def _init_(self,name,age):
            self.name=name
            self.age=age
           
    obj1=Person('tian',20)
    print(obj1.name)
     报错如下:

    TypeError                                 Traceback (most recent call last)
    <ipython-input-50-2187ba575e0c> in <module>
          4         self.age=age
          5 
    ----> 6 obj1=Person('tian',20)
          7 print(obj1.name)
          8 
    
    TypeError: Person() takes no arguments
    
    经查发现 类的构造方法 init左右都应该有两个_
    修改如下:
    class Person:
        def __init__(self,name,age):
            self.name=name
            self.age=age
           
    obj1=Person('tian',20)
    print(obj1.name)

    类的继承:
    class person:
        def pername(self):
            print("name:%s" %self.name)
        def perage(self):
            print("age:%s" %self.age)
    class man(person):
        def __init__(self,name,age,sex):
            self.name=name;
            self.age=age
            self.sex=sex
        def sex1(self):
             print("男")
    class woman(person):
        def __init__(self,name,age,sex):
            self.name=name;
            self.age=age
            self.sex=sex
        def sex1(self):
            print("女")
           
    man1=man("aa",20,'男')
    woman1=woman("bb",36,'女')
    man1.pername()
    man1.perage()
    man1.sex1()
    woman1.pername()
    woman1.perage()
    woman1.sex1()
    打印的结果如下:
    name:aa
    age:20
    男
    name:bb
    age:36
    女


    ---------------
    requests是一个很实用的Python HTTP客户端库
    requests的headers用来伪装成浏览器
    井号(#)常被用作单行注释符号,在代码中使用#时,它右边的任何数据都会被忽略,当做是注释。
    在python中也会有注释有很多行的时候,这种情况下就需要批量多行注释符了。多行注释是用三引号'''   '''包含的
    import requests
    link="http://www.1688.com/"
    headers = {'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-Us; rv:1.9.1.6) Firefox/3.5.6'}
    r=requests.get(link,headers=headers)
    r.encoding="utf-8"
    print(r.text)


    读取json
    import requests
    import json
    link="http://uni.notice.*****.com/get_plat_info"
    headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0'}
    res=requests.get(link,headers=headers)
    js_data=json.loads(res.text)
    for js1 in js_data:
        print(js1["channelId"],js1["channelName"])


    ..........
    100000 100000
    100001 100001
    100002 100002
    100003 100003
    100004 100004
    100005 100005
    100006 100006
    100007 100007_23
    100008 100008_24
    ...........

    post请求和get请求的区别: get请求的数据会暴漏在地址栏,post则不会;使用get,传输数据长度会受到URL长度的限制,post理论上不受限;post安全性更高

     

  • 相关阅读:
    Ajax学习笔记3种Ajax的实现
    分页学习笔记真分页和假分页实现
    学习笔记链表练习,模仿StringBuilder的山寨版StringBuilder
    学习笔记将Asp.Net网站发布到IIS的四种方法及注意事项
    3D 音频技术产品介绍(1):Iosono the future of spatial audio
    国际顶级语音信号增强工作组:IWAENC(International Workshop on Acoustic Echo and Noise Control)
    转:《欢聚时代(多玩YY)IPO招股书》(概要)
    苏州阔地网络科技有限公司专利分析
    CELT和SILK以及Opus的位分配方法
    ISAC 码流格式
  • 原文地址:https://www.cnblogs.com/playforever/p/10985935.html
Copyright © 2011-2022 走看看