为boto3 MTurk构建HTMLQuestion XML
我正在尝试使用htmlquestion数据结构和boto3的 create_hit 函数.根据该文档,XML应格式化 我已经创建了一个类TurkTaskAssembler,该类具有生成XML并通过API传递到机械Turks平台的方法.我使用BOTO3库来处理与亚马逊的通信. 看来我要生成的XML格式不正确,因为当我尝试通过API传递此XML时,我会遇到一个验证错误,例如: >>> tta = TurkTaskAssembler("What color is the sky?") >>> response = tta.create_hit_task() >>> ParamValidationError: Parameter validation failed: Invalid type for parameter Question, value: , type:
12 2024-04-03
编程技术问答社区
脸谱网搜刮Python
尝试用Python刮擦FB,我需要页面的电子邮件,刚刚下载了Beautifutsoup,LXML,请求库 from bs4 import BeautifulSoup import requests html_text = requests.get('https://www.facebook.com/KNOW-MORE-training-center-111698018315706/?ref=page_internal').text soup = BeautifulSoup(html_text, 'lxml') a = soup.find('h2', class_ = 'x1i10hfl xjbqb8w x6umtig x1b1mbwd xaqea5y xav7gou x9f619 x1ypdohk xt0psk2 xe8uvvx xdj266r x11i5rnm xat24cr x1mh8g0r xexx8yu x4uap5 x18d9i69 xkhd6sd x16tdsg8 x
12 2024-03-30
编程技术问答社区
请帮助使用BeautifulSoup和lxml以pythonic方式解析这个html表格
我已经搜索了很多关于美丽的小组和一些建议的LXML作为美丽的人的未来,但这很有意义,我很难从网页上的整个表格中解析下表. 我对这三列感兴趣,这些列有不同数量的行,具体取决于页面及其检查的时间.非常感谢美丽的套件和LXML解决方案.这样,我可以要求管理员在开发人员上安装LXML.机器. 所需的输出: Website Last Visited Last Loaded http://google.com 01/14/2011 http://stackoverflow.com 01/10/2011 ...... more if present 以下是来自混乱网页的代码示例: Website
4 2024-03-30
编程技术问答社区
webscraping:使用python从html中的xpath提取url:airbnb房源
我正在尝试使用Python 3库从Airbnb的城市页面上提取列表.我熟悉如何用美丽的库和请求库来刮擦更简单的网站. url:' 如果我检查页面上的链接元素(以chrome为单位),我会得到: xpath: "//*[@id="listing-9770909"]/div[2]/a" selector: "listing-9770909 > div._v72lrv > a" 我的尝试: import requests from bs4 import BeautifulSoup url = 'https://www.airbnb.com/s/Denver--CO--United-States/homes' html = requests.get(url) soup = BeautifulSoup(html.text, 'html.parser') divs = soup.find_all('div', attrs={'id': 'listing'}) 尝试2:
8 2024-03-30
编程技术问答社区
如何从html树上拆分标签
这是我的html树 Citibank Credit Card - Save over 5% on fuel | Citibank.co.in Get the IndianOil Citibank Card. Apply Now! Get 10X Rewards On Shopping - Save Over 5% On Fuel www.citibank.co.in/CreditCards 从
14 2024-03-30
编程技术问答社区
bs4.FeatureNotFound。无法找到具有你所要求的功能的树形构建器:lxml
您能建议一个修复吗?它几乎从IMGUR页面下载所有图像,其中一个图像不确定为什么在这种情况下它不起作用以及如何修复它? elif 'imgur.com' in submission.url and not (submission.url.endswith('gif') or submission.url.endswith('webm') or submission.url.endswith('mp4') or 'all' in submission.url or '#' in submission.url or '/a/' in submission.url): html_source = requests.get
12 2024-03-30
编程技术问答社区
如何使用 python selenium 从 Aliexpress 的每个产品页面抓取数据
我正在尝试从此网站上刮擦每个产品页面:尤其是我想获得屏幕截图中提到的评论和客户国家: 主要问题是我的代码没有检查正确的元素,这就是我正在努力的. 首先,我尝试在此产品上刮擦: https://www.aliexpress.com/item/1005003801507855.html? &algo_exp_id = 6D3ED61E-F378-43D0- a429-5f6cddf3d6ad-8&pdp_ext_f=%7B%22sku_id%22%3A%2212000027213624098%22%7D&pdp_pi=-1%3B40.81%3B-1%3B-1%40salePrice%3BMAD%3Bsearch-mainSearch 这是我的代码: from selenium import webdriver from selenium.webdriver.common.by import By from lxml import html import csssele
10 2024-03-30
编程技术问答社区
用BeautifulSoup包住标签的内容
我正在用美丽的小组包裹标签的内容. 这个: Footnote 1 Footnote 2 应该成为这个: Footnote 1 Footnote 2 所以我使用以下代码: footnotes = soup.findAll("div", { "class" : "footnotes" }) footnotes_contents = '' new_ol = soup.new_tag("ol") for content in footnotes[0].children: new_tag = soup.new_tag(content) new_ol.append(new_tag) footnotes[0].clea
16 2024-03-30
编程技术问答社区
使用Beautiful Soup来解析XML比单独使用lxml有什么好处吗?
我经常使用美丽的汤来解析HTML文件,因此,当我最近需要解析XML文件时,我选择使用它.但是,由于我正在解析一个非常大的文件,因此失败了.在研究为什么失败时,我被带到了这个问题:加载巨大的xml文件和处理MemoryError . 这使我提出了我的问题:如果LXML可以处理大文件和美丽的汤不能,那么使用美丽的汤有什么好处,而不是直接使用LXML? 解决方案 如果您查看有关 BeautifulSoup Parser : > " BeautifulSoup"是一个python包装,可以解析破碎的 html,而" lxml"的功能更快,但具有高质量的HTML/XML.因此,如果您正在与第一个打交道,那么您最好使用BS ... ,但是拥有" lxml"的优点是您能够获得soupparser. 我在顶部提供的链接显示了如何使用" lxml" 使用" BS"功能 所以最后 ...您最好使用" lxml". 其他解决方案 LXML非常快,并且相对有效. Beautifu
8 2024-03-30
编程技术问答社区
要让BeautifulSoup4+lxml与cx_freeze一起工作,需要什么?
摘要: 我有一个WXPYTHON/BS4应用程序,我正在使用CX_FREEZE构建的EXE. 那里的构建成功没有错误,但是尝试运行EXE结果A FeatureNotFound BeautifulSoup4的错误.抱怨我没有安装LXML库. 从那以后,我将程序删除到最小状态,但仍然会出现错误. 是否有人成功地使用CX_FREEZE构建BS4应用程序? 请查看下面的详细信息,让我知道您可能有的任何想法. 谢谢, 详细信息 完整错误追溯: 我将应用程序简化为最基本的状态,但仍然会出现错误.我在python 3.4上也遇到了相同的错误. Traceback (most recent call last): File "C:\WinPython27\python-2.6.7\lib\site-packages\cx_Freeze\initscripts\Console.py", line 27, in exe
6 2024-03-30
编程技术问答社区
如何使用beautifulsoup和selenium获得所有结果,并禁用自动测试页面?
我试图以某种方式刮擦网站,它仅显示24个结果如何加载所有带有隐藏自动化测试页面的结果? 在代码下方: # import library from selenium import webdriver from selenium.webdriver import Chrome import pandas as pd import bs4 #create list items = [] prices = [] volumes = [] driver = webdriver.Chrome() driver.get("https://www.fairprice.com.sg/category/milk-powder") soup = bs4.BeautifulSoup(driver.page_source, 'lxml') allelem = soup.find_all('d
8 2024-03-30
编程技术问答社区
产生的Beautiful Soup txt文件中的文件编码不明
我下载了13,000个文件(来自不同公司的10-K报告),我需要提取这些文件的特定部分(第1A-风险因素).问题是我可以轻松地以Word打开这些文件,它们是完美的,而当我在普通TXT编辑器中打开它们时,该文档似乎是HTML,最后是带有大量加密字符串的HTML(编辑:我怀疑这是由于这些文件的XBRL格式).同样的是使用美丽的套件. 我尝试使用在线解码器,因为我认为这也许是连接到base64编码的,但是似乎已知的编码都无法帮助我.我看到在某些文件开始时,有类似的内容:"使用确定性披露管理6.31.0.1"和其他程序,我认为这也许会导致编码.但是,Word能够打开这些文件,因此我想必须有一个已知的键.这是一个示例编码的数据: M1G2RBE@MN)T='1,SC4,]%$$Q71T3
10 2024-03-30
编程技术问答社区
快速有效的方法来解析破碎的HTML?
我正在从事需要快速HTML解析的大型项目,包括恢复损坏的HTML页面. 当前LXML是我的选择,我知道它也为libxml2的恢复模式提供了一个接口,但我对结果并不满意.对于某些特定的HTML页面,我发现BeautifulSoup可以做出更好的结果(例如: http://fortune.com/2015/11/11/11/vw-scandal-volkswagen-gift-cards/,这个有一个损坏的标签, lxml/libxml2无法纠正) .但是,问题是BS非常慢. 正如我所看到的,像Chrome和Firefox Parse这样的现代浏览器很快就可以很好地处理HTML.像LXML一样,Chrome的解析器建立在Libxml2和libxslt的顶部,但具有更有效的HTML处理算法.我希望会从铬中导出独立的存储库,以便我可以使用它们,但还没有找到类似的东西. 有人知道一个好的自由还是至少解决方法(通过利用当前已知解析器的一部分)?非常感
14 2024-03-30
编程技术问答社区
在BeautifulSoup中从findall()中获取一个href的子集
我的目标是编写一个python脚本,该脚本以艺术家的名字作为字符串输入,然后将其附加到Genius搜索查询的基本URL上.然后从返回的网页链接中检索所有歌词(这是此问题所需的子集也将包含该子集中每个链接中的艺术家名称.想要在我的子集中.我试图找到一个简单的解决方案,但失败了. import requests # The Requests library. from bs4 import BeautifulSoup from lxml import html user_input = input("Enter Artist Name = ").replace(" ","+") base_url = "https://genius.com/search?q="+user_input header = {'User-Agent':''} response = requests.get(base_url, headers=header) soup = BeautifulSoup(r
10 2024-03-30
编程技术问答社区
用pd.read_html解析一个html表格,其中单元格本身包含全表
我需要从HTML中解析一个嵌套在较大表中的表.如下所示,用pd.read_html> pd.read_html进行了解析,然后"插入"/"串联"为行. 我希望将这些嵌套表分解为自己的pd.DataFrames,并将其作为对象作为对应列的值插入. 如果这是不可能的,则将嵌套表作为相应位置中的字符串作为字符串,将是可以的. 测试的代码: import pandas as pd df_up = pd.read_html("up_pf00344.test.html", attrs = {'id': 'results'}) 输出的屏幕截图: 在HTML中呈现的表格屏幕截图: 链接到文件: . 解决方案 您不能使用 read_html 要读取嵌套表,但是您可以滚动自己的HTML读取器并使用read_html作为表单元格: import pandas as pd import bs4 with open('up_pf00344.test.html') as f:
6 2024-03-30
编程技术问答社区
美丽的Soup获取动态表数据
我有以下代码: url = 'https://www.basketball-reference.com/leagues/NBA_2017_standings.html#all_expanded_standings' html = urlopen(url) soup = BeautifulSoup(html, 'lxml') print(len(soup.findAll('table'))) print(soup.findAll('table')) 网页上有6个表,但仅返回4个表.我试图使用" html.parser"或" html5lib"作为解析器,但也没有起作用. 任何想法我如何从网页上获得"扩展的积分"表? 谢谢! 解决方案 requests无法获取JS加载的数据.因此,您必须使用selenium.首先安装selenium通过pip - pip install selenium和下载并将文件放入您的工作目录中.然后尝试以下代码. from bs
16 2024-03-30
编程技术问答社区
用BS4 "lxml "刮取XML数据
试图解决与此问题非常相似的问题: [我有以下代码: from bs4 import BeautifulSoup import requests r = requests.get('https://www.usda.gov/oce/commodity/wasde/latest.xml') data = r.text soup = BeautifulSoup(data, "lxml") for ce in soup.find_all("Cell"): print(ce["cell_value1"]) 该代码在没有错误的情况下运行,但没有向终端打印任何值. 我想提取上面针对整个页面指出的" cell_value1"数据,所以我有类似的内容: 2468.58 3061.58 376.64 and so on... 我的XML文件的格式与上述问题中解决方案中的样本相同.我确定了适当的属性标签特定的我要刮擦的属性.为什么值不打印到终端? 解决方案 问题
12 2024-03-30
编程技术问答社区