Python 真的好用!
测试
要多用 print()
函数来做测试,如果不清楚某个变量的类型,可以用 print(type(x))
来先做一个类型输出,其中x就是你要看的变量。
比如说爬虫会用到美丽鸡汤 BeautifulSoup
,一般使用方法会像这样:
soup = BeautifulSoup(value1, 'html.parser')
如果你要用 print(soup)
的话可能会报错(我的python2就报错了),然后可以用:
print(type(soup))
来输出它的类型;注意是 type()
而不是 typeof()
要和c语言区别开来。
soup.select() 返回一个list
爬虫在网页上抓取内容依赖dom的知识,然而你要挑一个标签出来就必须用到这个 select()
函数。例如:
alink = soup.select('a')
就选择了文件中所有的a标签,放入变量alink里面。可以选择的标签还有很多啊,比如 soup.select('h1')
就选择了所有的一级标题;soup.select('#id1')
选中所有id是id1的元素;soup.select('.link')
选中了所有类是link的元素。
这个alink是一个list,类似于数组的存在,所以如果你要看看它是什么,一般要采用遍历输出的方法:
for link in alink:
print(link)
输出后你会发现结果还是html的一个完整标签,如果你要内容,那么输出的是这样:
for link in alink:
print(link.text)
如果你要提取链接的话,这会像map这样的数据结构:
for link in alink:
print(link['href'])
这就ok。