首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解析一批网页?

问如何解析一批网页?
EN

Stack Overflow用户
提问于 2017-09-19 23:16:49
回答 2查看 39关注 0票数 0

我想从quizlet批量导出闪存卡集合/卡组的列表。而不是手动单击菜单,导出,勾选‘包含图片’,复制,粘贴到新的空白文本文件,保存...写一个脚本来做这件事会更容易。

我该怎么做呢?有没有人能帮我抢先一步(剩下的我自己来做,等等)。

Javascript?JQuery?Python?

需要解析URL的文本文件(直接链接到每个卡片组)。例如:https://quizlet.com/215441327/f1-u1a-making-friends-flash-cards/ https://quizlet.com/218503855/f1-u1b-making-friends-flash-cards/并导出。

更新:有没有一种方法可以触发“更多”按钮(省略号)的onclick,然后再触发"EXPORT"?然后点击复选框“包含图片”。然后抓起文本区?

EN

回答 2

Stack Overflow用户

发布于 2017-09-19 23:40:10

我的首选是python。作为起点,请参阅下面的代码。我正在使用BeautifulSoup包。请参阅下面的示例作为起点。

代码语言:javascript
复制
from bs4 import BeautifulSoup
import requests
url = "https://quizlet.com/215441327/f1-u1a-making-friends-flash-cards/"
headers = {'User-Agent':'Mozilla/5.0'}
page = requests.get(url)
soup = BeautifulSoup(page.text, "html5lib")

获取英语单词

代码语言:javascript
复制
for en in soup.select(".TermText.notranslate.lang-en"):
    print(en.text.strip())

输出:

代码语言:javascript
复制
enjoy
cheerful
everyone
sporty
sometimes
practise
practice
friend
favourite
help

对于其他语言

代码语言:javascript
复制
for ch in soup.select(".TermText.notranslate.lang-zh-TW"):
    print(ch.text.strip())

输出:

代码语言:javascript
复制
請享用
高興的
每個人
運動型的
有時
練習
練習
朋友
最喜歡的
幫助
票数 1
EN

Stack Overflow用户

发布于 2017-09-20 00:13:41

您还可以使用selenium python库与网页进行交互:

代码语言:javascript
复制
from selenium import webdriver
import os
chromedriver = "C:\Users\pappuj\Downloads\chromedriver"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
url='http://www.zoover.nl/cyprus'
driver.get(url)
driver.find_element_by_class_name('next').click()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46304106

复制
相关文章

相似问题

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