我爱编程

爬一爬

2018-01-22  本文已影响26人  雷霆嘎巴嘎嘎

使用pandas存储爬取的内容为xlsx格式和csv格式

#coding = utf-8

import urllib.request
from bs4 import BeautifulSoup

'''
import as 是把引入的模块换个名字 as后边即是
'''
import pandas as pd

def openthedoorToSoup(url):
    r =  urllib.request.urlopen(url).read().decode()
    # soup = BeautifulSoup(r,'html.parser') 
    return r


url= "http://www.runoob.com/html/html-intro.html"
html = openthedoorToSoup(url)
soup = BeautifulSoup( html,'html.parser')


# 得到里边的文字
list = [x.text for x in soup.findAll("h2")]
df = pd.DataFrame(list, columns = ['我是一个特立独行的标头'])
# df.to_excel('爬虫.xlsx')

# print(df.iloc[2,0])

# 存储在csv文件中 但是  会乱码

"""
在pandas中读取带有中文的csv文件时,读写中汉字为乱码,可    加上encoding参数来避免,如:
pd.read_csv("ee.csv",encoding="gbk")
当然,在导出时记得也加上encoding参数,否则导出后用excel打  开也是乱码,editplus打开正常,如:
df.to_csv("sel.csv",index=False,encoding="gbk")
                                                """
df.to_csv("爬虫.csv")
df.to_csv("sel.csv",index=False,encoding="gbk")
上一篇 下一篇

猜你喜欢

热点阅读