当前位置 主页 > 网站技术 > 代码类 >

    python提取xml里面的链接源码详解

    栏目:代码类 时间:2019-10-15 15:07

    因群里朋友需要提取xml地图里面的链接,就写了这个程序。

    代码:

    #coding=utf-8
    import urllib
    import urllib.request
    import re
    url='http://zhimo.yuanzhumuban.cc/sitemaps.xml'
    html=urllib.request.urlopen(url).read()
    html=html.decode('utf-8')
    r=re.compile(r'(http://zhimo.yuanzhumuban.cc.*?\.html)')
    big=re.findall(r,html)
    for i in big:
     print(i)
     op_xml_txt=open('xml.txt','a')
     op_xml_txt.write('%s\n'%i)

    扩展阅读:

    Python3提取xml文件中的内容

    import xml.dom.minidom
    
    def find_child(Par_nodes, mystr):
      for child_node in Par_nodes:
        if(len(child_node.childNodes) > 0):
          mystr = find_child(child_node.childNodes, mystr)
        elif(child_node.nodeValue != None):
          mystr += child_node.data.replace('\n', '')
      return mystr
    
    if __name__ == '__main__':
    
      dom1 = xml.dom.minidom.parse('2.XML') #打开xml文件
      root = dom1.documentElement     #得到文档元素对象
      app_nums = root.getElementsByTagName('base:DocNumber') #按标签名称查找,返回标签结点数组
      app_num = app_nums[2]
      print('专利申请号:'+app_num.firstChild.data)
      titles = root.getElementsByTagName('business:InventionTitle')
      title = titles[0]
      print('专利名称:'+title.firstChild.data)
      Paragraphs = root.getElementsByTagName('base:Paragraphs')
      abstract = Paragraphs[0]
      print('专利摘要:'+abstract.firstChild.data)
      company_names = root.getElementsByTagName('base:Name')
      company_name = company_names[0]
      print('公司名称:'+company_name.firstChild.data)
      mystr = ''
      for i in range(len(Paragraphs)):
        if (Paragraphs[i].firstChild.data == '发明内容\n\t'):
          i+=1
          while Paragraphs[i].firstChild.data != '附图说明\n\t':
            mystr = find_child(Paragraphs[i].childNodes, mystr)
            i+=1
    
      print('发明内容:' + mystr)

    以上就是本次介绍的全部实例代码知识点,感谢大家的学习和对IIS7站长之家的支持。