使用python请求收集数据表

时间:2018-08-25 13:07:09

标签: web-scraping datatables python-requests

我一直在抓取一些包含表的站点,如果表本身是类名,则大多数站点都使用以下代码。 (想法是将数据抓取并放入一个csv文件中)

import csv
from urllib.request import urlopen
from bs4 import BeautifulSoup
import requests
import urllib

url = ("https://en.wikipedia.org/wiki/Comparison_of_text_editors")
req = urllib.request.Request(url, headers={'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'})
html = urllib.request.urlopen(req)

bsObj = BeautifulSoup(html, "lxml")
table = bsObj.find_all("table", {"class": "wikitable"})[0]
rows = table.find_all("tr")
csv_file = open("proxies2.csv", 'a', newline='')
writer = csv.writer(csv_file)
try:
    for rows in rows:
        csvRow = []
        for cell in rows.find_all(["td", "th"]):
            csvRow.append(cell.get_text())
        writer.writerow(csvRow)
finally:
    csv_file.close()

当我使用网站(link)时;第一列返回的信息比我想要的更多,这可能是由于第一列具有超链接。对此的任何帮助将不胜感激:)

0 个答案:

没有答案