Python3.6 BeautifulSoup无法工作
我的代码如下; source_code = requests.get(kale_url_keys) plain_text = source_code.text soup = BeautifulSoup("plain_text ") 或 r = requests.get(kale_url_keys) html = r.content soup = BeautifulSoup(html, "html.parser") 我写" soup = beautifulsoup(任何)"时,我遇到了错误; 或 解决方案 做两件事: 安装最新的稳定 Update beautifulsoup4 - 确保您在正确的Python 3.6.0环境中更新它: pip3 install beautifulsoup4 --upgrade 其他解决方案 尝试使用request.urlopen而不是html.parser lxml 我在同一版本的python上,一切正常
0 2023-12-02
编程技术问答社区
美丽的汤表转为CSV
我正在使用美丽的汤来尝试刮擦网站表,并将特定列提取到CSV文件. import requests import urllib.request from bs4 import BeautifulSoup product_table = browser.page_source soup = BeautifulSoup(product_table, 'html.parser') table = soup.find_all('table')[4] table_rows = table.find_all('tr') for tr in table_rows: td = tr.find_all('td') row = [i.text for i in td] print(row) print(row)输出: [] ['', 'CANDY', 'ALBANESE CONFEC', 'Albanese Confectionery Group', 'Gumm
0 2023-12-02
编程技术问答社区
登录网站后的靓汤搜刮表
我有一块Python代码,它将我记录到网站上.我正在尝试提取特定表的数据,我会遇到错误,并且在线搜索后我不确定如何解决. 这是我在f.py文件中写的代码: import mechanize from bs4 import BeautifulSoup import cookielib import requests cj = cookielib.CookieJar() br = mechanize.Browser() br.set_cookiejar(cj) br.open("http://kingmedia.tv/home") br.select_form(nr=0) br.form['vb_login_username'] = 'abcde' br.form['vb_login_password'] = '12345' br.submit() a = br.response().read() url = br.open("http://kingmedia.tv/h
0 2023-12-02
编程技术问答社区
为什么在第4行出错: 元素类型 "n.length "与Google Apps Script'的XlmService?
我正在尝试使用Google Apps脚本的XLMService刮擦HTML表数据,其中哪个功能对我来说是新的.但是我遇到了一个错误,"异常:第4行上的错误:元素类型" n.length"必须遵循属性规格,">"或"/>".这是由于本网站上的某些内容与XLMService不兼容吗?感谢您的建议! function test() { const url = 'https://www.tsa.gov/coronavirus/passenger-throughput'; const res = UrlFetchApp.fetch(url, { muteHttpExceptions: true }).getContentText(); var res1 = XmlService.parse(res); } 解决方案 基于这个答案/p> function test() { const url = 'https://www.tsa.gov/coronavirus/pass
0 2023-12-02
编程技术问答社区
使用Python刮取HTML表的网页
我认为我真的很接近,因此任何帮助都将不胜感激.试图从纳斯达克主页上的标题为"股票市场活动"的表中刮擦索引和价值数据: def get_index_prices(NASDAQ_URL): html = urlopen(NASDAQ_URL).read() soup = BeautifulSoup(html, "lxml") for row in soup('table', {'class': 'genTable thin'})[0].tbody('tr'): tds = row('td') print "Index: %s, Value: %s" % (tds[0].text, tds[1].text) print get_index_prices('http://www.nasdaq.com/') 错误读取: 列表索引超出范围 解决方案 此表由JavaScript呈现.如果您查看页面源
0 2023-12-01
编程技术问答社区
用简单的HTML DOM循环浏览一个表格
我正在使用简单的HTML DOM从HTML文档中提取数据,并且我有几个问题需要帮助. 在以if ($td->find('a'))开头的线上,我想分别提取HREF和锚节点的内容,然后将它们放在单独的变量中.但是,该代码不起作用(请参阅下面代码中的回声输出). 最好的方法是什么?请注意,我的目的是以后从信息中创建一个XML文档,因此我需要以正确的顺序信息. 这些链接导致我还想提取并放入单独的变量中,其中包含有关不同汽车(例如"最大速度","价格"等)的详细信息.我如何在这些页面上掌握数据? find('table') as $table) {
0 2023-12-01
编程技术问答社区
如何在Python中用Beautifulsoup刮取结构不完善的html表格?
这个网站 tr标签,我有5 td标签,对于其他一些标签,我有或多或少有td标签,因此,根据其数据,请精确地刮擦数据并不容易列. 在这里,您可以看到代码的一部分,该代码仅提取与一行相关的数据,而不是保留空单元的空值. soup = BeautifulSoup(page.content, 'lxml') # Parse the HTML as a string table = soup.find_all('table')[0] # Grab the first table new_table = pd.DataFrame(columns=range(0,10), index = [0]) # I know the size row_marker = 0 for row in table.find_all('tr'): column_marker = 0 columns = row.find_all('td') for column in column
0 2023-12-01
编程技术问答社区
使用BeautifulSoup提取表格中的数据
我正在抓取此 page 我的Android应用程序.我想在城市和区域代码表上提取数据 这是我的代码: from bs4 import BeautifulSoup import urllib2 import re base_url = "http://www.howtocallabroad.com/taiwan/" html_page = urllib2.urlopen(base_url) soup = BeautifulSoup(html_page) codes = soup.select("#codes tbody > tr > td") for area_code in codes: # print td city and area code 我想知道python或BeautifulSoup中的什么功能从value 获取值 对不起,只是一个Android Dev学习写Python 解决方案 您可以使用findAll(),以及将列
0 2023-12-01
编程技术问答社区
使用rvest搜刮带有span的html表格
我正在使用rvest在下一页提取表: 以下代码有效: URL % read_html %>% html_nodes("table") %>% .[[2]] %>% html_table(trim=TRUE) 但是边缘和总统名字的专栏具有一些奇怪的价值观.原因是源代码具有以下内容: 00.001−10.44% 因此,我没有获得-10.44%,我得到00.001â10.44% 我该如何解决? 解决方案 一个选项是单独定位和替换问题列. 可以用xpath 将边距列定为目标 # get the html
0 2023-12-01
编程技术问答社区
解析复杂的HTML表格
我正在尝试解析我的大学提供的课程时间表,以便将信息导入某种日历. 时间表的一个示例可以在这里看到: 在我看来, 自动生成的HTML含量是一团糟,很难掌握.例如.这些表主要是用rowspans和colspans构建的(代码中的单元格与浏览器中的实际视觉位置相比,似乎是部分任意的). 我已经尝试了什么: 要求大学的行政办公室提供更简单,更易于单独阅读的文件.当然,这是不可能的,毕竟这意味着一分钟的额外努力. 研究用于生成HTML的原始工具.它被称为" Sked Stundenplan软件".我找不到任何提示或工具来"扭转"生成过程. 寻找现有的解决方案,这时我找到了一些工具(例如用PHP解析HTML(主要是使用DOMDOCUMENT).有时奏效了,但是太不可靠了……要考虑的例外似乎是不确定的. 现在,我认为传统的HTML解析不会使我走得更远,至少在可接受的发展时间内. 我正在寻找的其他方法是从复杂的HTML表中获取信息的其他方法,例如YQL,也许可以用Col-/
0 2023-12-01
编程技术问答社区
点击按钮后解析HTML表格,使其可见
我正在制作一个Java程序,该程序启动时需要从网站读取数据. 所讨论的网站是: 要访问所需的表,在页面底部附近有一个按钮,标题为"负载原始数据".单击时,将显示我需要的信息的表. 尽管我以前从未做过它,但我相信我可以很容易地学习如何解析桌子并将其放入一些阵列.不过,我无法弄清楚的是如何让程序"单击"该按钮以使表显示.我该怎么做? 编辑:这是我现在正在使用的.目前,这绝对没有打印,我怀疑这是因为jsoup没有看到表,因为"加载原始数据"按钮尚未被"单击". for (Element table : doc.select("table[id=chart_table]")) { for (Element row : table.select("tr:gt(2)")) { Elements tds = row.select("td:not([rowspan])"); for (Element element : tds) {
0 2023-12-01
编程技术问答社区
在循环中查找美丽的汤,返回TypeError
我试图在带有美丽汤的Ajax页面上刮擦一张桌子,并用文字图书馆将其打印在桌子上. import BeautifulSoup import urllib import urllib2 import getpass import cookielib import texttable cj = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) urllib2.install_opener(opener) ... def show_queue(): url = 'https://www.animenfo.com/radio/nowplaying.php' values = {'ajax' : 'true', 'mod' : 'queue'} data = urllib.urlencode(values) f = opener.open
0 2023-12-01
编程技术问答社区
Webkit浏览器对表格的渲染取决于colspan
请告知我是否在幻觉...我希望如此,因为我无法根据浏览器正确渲染桌子,希望有人可以为我提供解决方案. 我的问题是,有些桌子没有显示使用Webkit(即Safari和Chrome)的浏览器的右侧边框.我正在使用的Safari版本是4.0.4(531.21.10),根据帮助下的菜单项.根据Google的网站,我正在使用的Chrome版本是最新的,但是我找不到在帮助下的"关于"菜单选项以确认版本... 有问题的表是那些根据列数使用ColSpan属性的表.如果表具有两个或更少的colspan列,则表可以用右边框正确显示.如果表具有与Colspan的3列或更多列,则该表显示带有缺失的右侧边框的表.如果表没有Colspan,则表可正确显示,无论列数量如何.为什么列的数量以及Colspan属性与中国的鸡蛋价格有任何关系? btw:桌子在IE,FF和Opera中正确渲染...问题仅在Safari和Chrome中... 这是正确显示的两个列示例的HTML源:
0 2023-12-01
编程技术问答社区
在Chrome和Safari浏览器中,与thead的双重边框间距
我有table使用thead和tbody. table具有border-spacing集,在chrome和safari中, header行和之间的空间加倍. 据报道,它是 char for Chrome 去年,但这是我能找到的唯一引用. 还有其他人有这个,还是知道如何解决? Heading 1 Heading 2 Heading 3 Cell 1 Cell 2 Cell 3 它按预期显示(所有行均等)在Firefox中,不确定IE. 解决方案
0 2023-12-01
编程技术问答社区
Webkit浏览器在确定表格中的单元格宽度时没有考虑到填充物 | layout:fixed
在将table-layout:fixed应用于表上并在单元格上使用填充时,我会得到不同的结果. IE和Firefox似乎通过将细胞宽度和填充物添加在一起可以正常工作. Chrome和Safari仅使用细胞宽度.我看到这个问题有一个错误,但找不到任何解决方法.有人知道如何解决吗? webkit bugzilla:table { width:200px; border-collapse:collapse; } #table-1 { table-layout:auto; } #table-2 { table-layout:fixed; } td { padding:5px 10px; } td.set-width { width:15px; } .box { width:15px; height:15px; background-color:red; } Table-Layout: Auto
0 2023-12-01
编程技术问答社区
CSS/Webkit: 表行的背景图片
由于某种原因,当您将背景图像应用于Safari和Chrome中的TR时,它将其呈现,就好像规则适用于每个TD. firefox: (来源: whyprime.com ) Safari: (来源:我发现本文讨论了一个解决方案: 将背景图像应用于表行 我能够在Internet Explorer中使用SPACER GIF映像,但我无法为Safari弄清楚. 解决方案 您的桌子总是只有两个行吗?例如: 如果是这样,一个简单但不是过于优雅的解决方案是将您的背景图像分为两个图像,然后将CSS类应用于左右列,将箭头的一半涂在左侧的右侧列,右列的左侧:
0 2023-12-01
编程技术问答社区