在使用爬虫前确保requests和BeautifulSoup4模块都已经安装好了:
pip install requests pip install BeautifulSoup4 |
BeautifulSoup4使用手册:https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html
简单的示列代码:
import requests #导入requests包 url = 'http://www.ireader.com/index.php?ca=search.index&keyword=%E6%9C%B1%E8%87%AA%E6%B8%85' strhtml = requests.get(url) #Get方式获取网页数据 strhtml.encoding='utf-8' print(strhtml.text) |
注:这里面使用requests的get方法来获取html,具体是get还是post等等要通过网页头信息来查询(以谷歌浏览器为例,在开发者模式下,network,选择all进行查看,可能需要刷新)
通过点取属性的方式只能获得当前名字的第一个标签,如: soup.body.a
如果想要得到所有的<a>标签,或是通过名字得到比一个tag更多的内容的时候,就需要用到 Searching the tree 中描述的方法,比如: find_all()
tag.name tag.name = "black" #修改标签名 tag['class'] #获取属性 tag.attrs #获取所有属性 tag['id'] = 1 #修改属性 del tag['class'] #删除属性 tag.string.replace_with('no longer') #tag中包含的字符串不能编辑,但是可以被替换成其它的字符串,用 replace_with() 方法 tag.string #输出标签中的字符串 |
head_tag.contents[3].name #标签的 .contents 属性可以将标签的子节点以列表的方式输出: