如何获取列表项并将其保存到python中的数据库

时间:2016-02-27 04:50:38

标签: python beautifulsoup

您好我正在抓取一个网站,其中我正在抓取div标签,并且从“div”标签我发现所有“li”标签。 我的代码:

response3 = urllib.request.urlopen(link)
soup5 = BeautifulSoup(response3, "html.parser")
companydetail = soup5.find_all("div", id="contact")
for d in companydetail:
    lis = d.find_all('li')
    print (lis)

我得到了像

这样的结果
[<li>

        GUANGZHOU BEGOL HOLDINGS LIMITED

 </li>,
 <li>

              NO. 158 DONGFENG RD.(W).GUANGZHOU,CHINA.

  </li>,
  <li>

        GUANGDONGGUANGZHOU

   </li>,
   <li>

              510170

   </li>,
   <li>

              http://www.begol.com

   </li>]

但我希望输出如下:

GUANGZHOU BEGOL HOLDINGS LIMITED
NO. 158 DONGFENG RD.(W).GUANGZHOU,CHINA.
GUANGDONGGUANGZHOU
510170

之后我希望它保存在MySQL数据库中。

2 个答案:

答案 0 :(得分:1)

我认为在结果集上,正确的方法是get_text()。但是,您有多个元素,因此您必须遍历lis,调用get_text(),并将结果推送到数组中。

答案 1 :(得分:0)

获取每个li元素需要迭代你的lis,因为lis是li元素的列表

for d in companydetail:
    lis = d.find_all('li')
    for ele in lis:
        print ele.get_text()