Python 不均匀行的刮削台

Python 不均匀行的刮削台,python,scrapy,screen-scraping,Python,Scrapy,Screen Scraping,我试图在这里刮表,但我在一个死胡同,并想问更有经验的人应该如何刮表,这是我设法写的代码。我需要在输出CSV中将这些字段作为列进行刮除-国家/地区、媒体名称、媒体url、媒体类型、媒体焦点、语言、媒体格式。现在我在一个单元格中列出了列中的所有元素,每个元素用逗号分隔,而不是按行分隔,这是我的目标。我应该先按列迭代还是其他什么 class AbyzrowbyrowSpider(scrapy.Spider): name = 'abyziter' allowed_domains = ['abyznews

我试图在这里刮表,但我在一个死胡同,并想问更有经验的人应该如何刮表,这是我设法写的代码。我需要在输出CSV中将这些字段作为列进行刮除-国家/地区、媒体名称、媒体url、媒体类型、媒体焦点、语言、媒体格式。现在我在一个单元格中列出了列中的所有元素,每个元素用逗号分隔,而不是按行分隔,这是我的目标。我应该先按列迭代还是其他什么

class AbyzrowbyrowSpider(scrapy.Spider):
name = 'abyziter'
allowed_domains = ['abyznewslinks.com']
start_urls = ['http://www.abyznewslinks.com/argen.htm']

def parse(self, response):
    table = response.xpath("(//div)[position()>5 and position()<last()]//table//tr")
    for row in table:
        item=AbyzItem()
        item['country']=response.xpath("/html/body/div[3]/table//td//font/text()[last()]").getall()
        item['continent']=response.xpath("/html/body/div[3]//a[2]/text()").getall()
        item['region']=response.xpath("/html/body/div[3]//a[3]/text()").getall()
        item['country_region'] = row.xpath("td[1]/font/text()").getall()
        item['media_url'] = row.xpath("td[2]/font/a/@href").getall()
        item['media_name'] = row.xpath("td[2]/font/a/text()").getall()
        item['media_type'] = row.xpath("td[3]//font/text()").getall()
        item['media_focus'] = row.xpath("td[4]//font/text()").getall()
        item['language'] = row.xpath("td[5]//font/text()").getall()
        item['media_format'] = row.xpath("td[6]//font/text()").getall()
        yield item
类AbyzrowbyrowSpider(scrapy.Spider):
名称='abyziter'
允许的_域=['abyznewslinks.com']
起始URL=['http://www.abyznewslinks.com/argen.htm']
def解析(自我,响应):

table=response.xpath(“(//div)[position()>5和position()好的,您可以在评估之前检查值,如下所示:

country=response.xpath(“/html/body/div[3]/table//td//font/text()[last()]”)。getall()
contraction=response.xpath(“/html/body/div[3]//a[2]/text()”).getall()
region=response.xpath(“/html/body/div[3]//a[3]/text()”).getall()
country\u region=row.xpath(“td[1]/font/text()”).getall()
media_url=row.xpath(“td[2]/font/a/@href”).getall()
media_name=row.xpath(“td[2]/font/a/text()”).getall()
media_type=row.xpath(“td[3]//font/text()”).getall()
media\u focus=row.xpath(“td[4]//font/text()”).getall()
language=row.xpath(“td[5]//font/text()”).getall()
media\u format=row.xpath(“td[6]//font/text()”).getall()
项目['country']=国家(如果有其他国家的话)''
项目['Continental']=如果是大陆,则为大陆''
项目['region']=如果区域为其他区域,则区域为“”
项目['country\u region']=如果country\u region为其他''
项目['media\u url']=如果media\u url为else'',则为media\u url
项目['media_name']=媒体名称(如果媒体名称为“其他”)
项目['media\u type']=如果媒体类型为其他类型,则为媒体类型“”
项目['media\u focus']=如果media\u focus为“其他”,则为media\u focus”
项目['language']=如果语言为其他语言,则为语言“”
项目['media_format']=如果media_format为其他格式,则为media_format“”