Python中文
首页
教程
问答
标签
搜索
登录
注册
刮取多个表并将每个表头作为行存储在cs中
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在尝试获取多个表,这些表的名称存储在h3标记下。有列的数据我可以抓取没有问题,当我输入下一个url时,我可以将这些数据附加到csv文件中。 我无法解决的问题是获取表头并将其相对于表的每一行进行存储。这样做的原因是当下一个表被送入时,我需要知道它属于哪个表。是否可以使用len循环来确定表的长度,然后将表头写入每一行?有可能出口商品吗?在</p> <p>这是我的密码 蜘蛛网.py在</p> <pre><code>from bigcrawler.items import BigcrawlerItem from scrapy import Spider, Request, Selector from scrapy.selector import Selector from bigcrawler.items import MatchStatItemLoader class CrawlbotSpider(Spider): name = 'bigcrawler' allowed_domains = ['www.matchstat.com'] start_urls = [ 'https://matchstat.com/tennis/tournaments/w/Taipei/2015', 'https://matchstat.com/tennis/tournaments/w/Hong%20Kong/2017', ] def parse_header(self , response): hxs = Selector(response) for tb in hxs.css('tr.match'): heading = tb.xpath('//*[@id="AWS"]/div/h3/text()').extract()[0] for td in tb.xpath(".//tr[contains(@class, 'match')]/td[contains(@class, 'round')]/text()"): il = BigcrawlerItem(selector=td) il.add_value('event_title' , heading) yield il.load_item() def parse(self , response): for row in response.css('tr.match'): il = MatchStatItemLoader(selector=row) il.add_css('round' , '.round::text') il.add_css('event1' , '.event-name a::text') il.add_css('player_1' , '.player-name:nth-child(2) a::text') il.add_css('player_2' , '.player-name:nth-child(3) a::text') il.add_css('player_1_odds' , '.odds-td.odds-0 [payout]::text') il.add_css('player_2_odds' , '.odds-td.odds-1 [payout]::text') il.add_css('h_2_h' , 'a.h2h::text') yield il.load_item() </code></pre> <p>在项目.py在</p> ^{pr2}$
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果其中只有一个标题不需要相对于当前节点,请尝试以下操作:</p> <pre><code>il.add_xpath('event_title', '//*[@id="AWS"]//h3/text()') </code></pre> <p>但如果需要它相对于当前节点,也可以执行以下操作:</p> ^{pr2}$
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当用户用PYTHON设置一个或一个不带值的URL时,他们怎么能输入一个/a的代码呢?
2 回答
当用户登录到站点时,如何显示不同的导航栏
1 回答
当用户登录时,在Flask中向用户显示处理结果
8 回答
当用户的Flask会话结束时,我如何从Redis后端中移除所有Celery结果?
9 回答
当用户的Okta配置文件字段当前为blan时,更新该字段
10 回答
当用户的付款逾期2天时,从Django模型检索数据
7 回答
当用户的消息以问号结尾时,如何让机器人说些什么?
5 回答
当用户的系统上可能也安装了Python 2.7时,如何在用户的系统上运行Python 3脚本?
3 回答
当用户确定打印数量时,使用Matplotlib打印动画
7 回答
当用户离开时是否可以删除整个网页?
9 回答
当用户给出一个单词时如何打印?
7 回答
当用户继续更改TKin中的值(使用trace方法)时,使用Entry并更新输入的条目
2 回答
当用户编辑表单字段时,从Django时间字段中删除秒数
5 回答
当用户被更改时,消息不会来自web套接字
7 回答
当用户访问表单时,如何使表单为只读,而不具有更改权限
10 回答
当用户试图更改对象的值时,使用描述符类引发RuntimeError
9 回答
当用户调整GUI的大小时,是否有方法更改GUI内容的大小?
9 回答
当用户调整风的大小时,pythontkinter小部件的大小会不均匀
4 回答
当用户购买某个类别时,是否查找其他类别的销售?
6 回答
当用户转到上一页时,Django和芹菜插入操作
4 回答