我想仅从博客中解析文本,然后以bellow
做from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen("https://edwvb.blogspot.ru/2018/03/3-tipa-povedeniya-kotorye-opredelyayut-uspeshnyh-prodavcov.html")
bsObj = BeautifulSoup(html, "html.parser")
这样我就可以看到以这种方式到达帖子的文本
nameList = bsObj.findAll("div", {"dir":"ltr", "style":"text-align: left;", "trbidi":"on"})
但是,我解析了两个对象,当我将其转换为pandas
时df = pd.DataFrame(nameList)
我有两行。
0
0 nnnnn(adsbygoogle = window.adsbygoogle ||...
1 nПеревод статьи 3 Behaviors That Drive Succes...
我需要分析只排1。我尝试做这个
df = pd.DataFrame(nameList[1])
并获得
TypeError: DataFrame constructor called with incompatible data and dtype: setting an array element with a sequence
namelist [1]具有bs4.element.tag类型
type(nameList[1])
bs4.element.Tag
那么如何将bs4.element.tag转换为pandas?或者可能有更简单的方法来解析文本blogspot.com?
这可能不是一个简单的决定
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen("https://edwvb.blogspot.ru/2018/03/3-tipa-povedeniya-kotorye-opredelyayut-uspeshnyh-prodavcov.html")
bsObj = BeautifulSoup(html, "html.parser")
nameList = bsObj.findAll("div", {"dir":"ltr", "style":"text-align: left;", "trbidi":"on"})
nameList = [i.text for i in nameList]
之后,我们需要首先将nameList[1]
转换为pd.Series
,然后转换为DataFrame
S = pd.Series(nameList[1])
S.to_frame()