天天看点

简单的爬虫----爬取百度百科练习

一开始看完文件的读写后以为可以一气呵成得写完这个代码,中途发现了很多得问题,比如中文字符写入文件格外得麻烦,还有就是一开始用requests来发送请求不知道为什么会报错,后来改成了urllib2.urlopen就不报错了,中文字符的处理看完一篇博客以后恍然大悟:点击打开链接,要转码的略显麻烦,不过也学到了,还有就是正则表达式很容易出错。。。还是bs4大法好,然后学到了如果想要获得标签之间的内容就用.text,然后贴上代码

代码:

#coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
from bs4 import BeautifulSoup
import urllib2
import urllib
import re
import requests
url="https://baike.baidu.com/item/%E8%B6%85%E8%87%AA%E7%84%B6%E8%83%BD%E5%8A%9B/5246252"
r=urllib2.urlopen(url)
x=0
f=open('test.txt','wb')
soup=BeautifulSoup(r,"html.parser")
for link in soup.find_all('div',class_='para'):
    d=link.text
    f.write(d+'\n')
    x += 1
print x
f.close()