鱼C论坛

 找回密码
 立即注册
查看: 1011|回复: 1

[已解决]关于爬取数据后对应关系的问题,谢谢

[复制链接]
发表于 2020-8-1 12:48:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
例如从:www.xxx.com获取出
名称 = ['一','二','三']
链接 = ['www1','www2','www3']

再解析每一个链接,得到每一链接下面对应的解析结果,例如每个链接下载都是一个列表

www1 对应的数据   ['1','2','3']
www2 对应的数据   ['4','5','6']
www3 对应的数据   ['7','8','9']

保存时想这样

一   1
一   2
一   3
二   4
二   5
二   6
三   7
三   8
三   9

请帮忙给个思路,谢谢
最佳答案
2020-8-5 22:33:57
本帖最后由 suchocolate 于 2020-8-5 22:39 编辑
import requests
from lxml import etree
from openpyxl import Workbook


if __name__ == '__main__':
    wb = Workbook()
    ws = wb.active
    headers = {'user-agent': 'firefox'}
    name_list = ['一', '二', '三']
    link_list = ['www1', 'www2', 'www3']
    row = 1
    for n, v in enumerate(name_list):
        r = requests.get(link_list[n], headers=headers)
        # html = etree.HTML(r.text)
        # data = html.xpath('//div/text()')
        data = ['1', '2', '3']
        for item in data:
            ws['a' + str(row)] = v
            ws['b' + str(row)] = item
            row = row + 1
    wb.save("test.xlsx")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-8-5 22:33:57 | 显示全部楼层    本楼为最佳答案   
本帖最后由 suchocolate 于 2020-8-5 22:39 编辑
import requests
from lxml import etree
from openpyxl import Workbook


if __name__ == '__main__':
    wb = Workbook()
    ws = wb.active
    headers = {'user-agent': 'firefox'}
    name_list = ['一', '二', '三']
    link_list = ['www1', 'www2', 'www3']
    row = 1
    for n, v in enumerate(name_list):
        r = requests.get(link_list[n], headers=headers)
        # html = etree.HTML(r.text)
        # data = html.xpath('//div/text()')
        data = ['1', '2', '3']
        for item in data:
            ws['a' + str(row)] = v
            ws['b' + str(row)] = item
            row = row + 1
    wb.save("test.xlsx")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-19 17:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表