类似的attr属性 把json数据输出为utf-8格式 网站根目录url和相对ur...">
美文网首页我爱编程
Python BeautifulSoup常见小操作

Python BeautifulSoup常见小操作

作者: Xinxing_Li | 来源:发表于2018-04-24 15:16 被阅读0次
获取一个<img src="">类似的attr属性
#soup  = img.parent 即soup是img的父级元素时可以在find或者select("")[0]
#后直接用中括号[ ]来获取attr
soup.find("img")["src"]
#但是如果soup直接是一个标签,例如
#soup = BeautifulSoup("<div style='color:red;'></div>","html.parser")
#此时应该使用:
soup.div["style"]
把json数据输出为utf-8格式
#python2.7
from __future__ import unicode_literals
import  json,codecs
fout = codecs.open("xxx.xx","w+","utf-8")
#有时要解决json里面字符串的\n问题str.Replace("\n", "<br />")  
fout.write(json.dumps({"json":['data']},sort_keys=True, indent=4,ensure_ascii=False))
fout.close()
网站根目录url和相对url的拼接
#例如把"www.imooc.com/img/"和"/item/123"拼接在一起
import urlparse
urlparse.urljoin("http://www.imooc.com/img/","/item/123")
# >>> 'http://www.imooc.com/item/123'
遍历大的div块时寻找soup类型的兄弟div节点
try:
    bg_div = bg_div.find_next_sibling()   #而bg_div.next_sibling就不是soup对象了而是转化为一个字符串
    #print bg_div['class']
    lists = bg_div.select(".course-card-container a")
except BaseException,e:
   print e,line_num
selenium在获取没有display的元素的text的时候只能拿到空字符串

此时应采用.ger_attribute(“innerText”)来解决

vue的数据类型中的

json数据对"children-list"这类带中间横线的key会报错,建议改为"children_list"

相关文章

网友评论

    本文标题:Python BeautifulSoup常见小操作

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