首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将文本列表写入定义的csv文件?Python硒刮除

如何将文本列表写入定义的csv文件?Python硒刮除
EN

Stack Overflow用户
提问于 2020-04-02 03:09:43
回答 1查看 658关注 0票数 1

我是Python新手,所以如果这是一个简单的问题,请原谅我。

我正在网上使用Selenium从Linkedin上抓取整个体验部分。以下是我的相关代码:

代码语言:javascript
复制
from time import sleep
from selenium import webdriver

ChromeOptions = webdriver.ChromeOptions()
driver = webdriver.Chrome('/Users/jones/Downloads/chromedriver')

driver.get('https://www.linkedin.com/in/pauljgarner/')

##writing 'Name' to excel
writer = csv.writer(open(parameters.file_name, 'w', encoding='utf8'))
writer.writerow(['Name'])

name = sel.xpath('normalize-space(//li[@class="inline t-24 t-black t-normal break-words"])').extract_first()

writer.writerow([name])

##scraping the entire work experience section:

experience = driver.find_elements_by_xpath('//section[@id = "experience-section"]/ul//li')
for item in experience:
    print(item.text)
    print("")

我从“体验”部分获得的输出是如下所示的文本列表:

代码语言:javascript
复制
Freelance Python Developer
Company Name
Depop
Dates Employed
Jun 2015 – Present
Employment Duration
4 yrs 11 mos
Location
London, United Kingdom
Python development using: Django, PostgreSQL, ElasticSearch, TensorFlow, Redis, gevent, Mongodb, Django REST Framework

我想把这个输出写到我用来捕获'Name‘的excel表中。

我要寻找的excel格式如下:

代码语言:javascript
复制
Name  Title   CompanyName  DatesEmployed  EmploymentDuration  Location  Description
Paul  Freel.. Depop        Jun 2015 – P.. 4 yrs 11 mos        London    Python Dev..

问题是,我不知道如何将我从experience部分中抓取的文本列表转换为我前面用特定元素(带有'Names')定义的同一个Excel表。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-02 03:56:48

尝试如下:

代码语言:javascript
复制
from selenium import webdriver

ChromeOptions = webdriver.ChromeOptions()
driver = webdriver.Chrome('/home/shubham/Downloads/chromedriver')
driver.get('https://www.linkedin.com/in/pauljgarner/')


rows = []

name = sel.xpath('normalize-space(//li[@class="inline t-24 t-black t-normal break-words"])').extract_first()
experience = driver.find_elements_by_xpath('//section[@id = "experience-section"]/ul//li')

rows.append([name])
for item in experience:
    rows[0].append(item)
    print(item.text)
    print("")

with open(parameters.file_name, 'w', encoding='utf8') as file:
    writer = csv.writer(file)
    writer.writerows(rows)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60983670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档