• Python网络数据采集


    一、正则表达式

     *     表匹配0次或者多次  a*b*

    +    表至少一次

    [ ]   匹配任意一个

    ( )  辨识一个编组

    {m,n} m或者n 次

    [^]  匹配任意不在中括号里的字符

    |    表示或者

    .    表示匹配任意字符

    ^    表字符的开始 ^a  表示以a开始

       表示转义字符

    $  和^ 相反  从字符串的末尾开始匹配

    ?! 不包含

    二、获得属性

    获得一个标签的全部属性

    myTag.attrs

    获取图片的资源位置src

    myImgTag.attrs["src"]

    获取网页的函数:

    random.seed(datetime.datetime.now())
    def getLinks(articleUrl):
    html = urlopen("http://en.wikipedia.org"+articleUrl)
    bs0bj = BeautifulSoup(html)
    return bs0bj.find("div",{"id":"bodyContent"}).findAll("a",herf=re.compile("^(/wiki/)((?!:).)*$"))
    links = getLinks("/wiki/Kevin_Bacon")
    while len(links) > 0:
    newArticle = links[random.randint(0,len(links)-1)].attrs["href"]
    print(newArticle)
    link = getLinks(newArticle)

  • 相关阅读:
    《重构》读书笔记
    每周总结
    《修改代码的艺术》读书笔记
    每周总结
    每周总结
    《修改代码的艺术》读书笔记
    每周总结
    第二周周总结
    以淘宝网为例,描绘质量属性的六个常见属性场景
    机器学习第八讲
  • 原文地址:https://www.cnblogs.com/tyyhph/p/7582446.html
Copyright © 2020-2023  润新知