- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想弄清楚如何将找不到的元素设置为 null 而不是跳过循环。在某些情况下,名称或职位或公司会丢失,因此我希望在我的 csv 中将其留空。我在 python 方面的知识有限,所以我真的需要一些帮助。
我已经拥有的问题是,如果抛出异常,则完全跳过该行。什么是实现我正在寻找的最好方法? Pandas 数据框会帮助解决这个问题吗?如果是这样,我应该怎么写呢?我应该以不同的方式写入 csv 吗?
filename = "C:\\scrape.csv"
f = open(filename, "w")
headers = "Name, Company, Title\n"
f.write(headers)
names = []
for value in names:
#Search
browser.find_element_by_xpath("//*[@id='ctl09_FindFirstName']").send_keys(value)
browser.find_element_by_xpath("//*[@id='ctl11_FindContacts']").click()
try:
for i in range(5):
try:
Name = browser.find_element_by_xpath("//*[@id='ctl11_DisplayName_"+str(i)+"']").text
Company = browser.find_element_by_xpath("//*[@id='ctl11_CompanyNamePanel_"+str(i)+"']").text
Title = browser.find_element_by_xpath("//*[@id='ctl11_CompanyTitlePanel_"+str(i)+"']").text
f.write(Name.replace(",", "|") + "," + Company.replace(",", "|") + "," + Title.replace(",", "|") + "\n")
#print("Name: " + browser.find_element_by_xpath("//*[@id='ctl11_DisplayName_"+str(i)+"']").text)
#print("Company: " + browser.find_element_by_xpath("//*[@id='ctl11_CompanyNamePanel_"+str(i)+"']").text)
#print("Title: " + browser.find_element_by_xpath("//*[@id='ctl11_CompanyTitlePanel_"+str(i)+"']").text)
except NoSuchElementException:
continue
except NoSuchElementException:
pass
f.close()
最佳答案
而不是使用 find_element_by
, 你可以使用 find_elements_by
.这样它将创建一个找到的元素列表,或者如果没有找到匹配的元素则创建一个空列表而不是抛出 NoSuchElementException
。 .
试试这个:
browser.find_element_by_xpath("//*[@id='ctl09_FindFirstName']").send_keys(value)
browser.find_element_by_xpath("//*[@id='ctl11_FindContacts']").click()
for i in range(5):
Name = browser.find_elements_by_xpath("//*[@id='ctl11_DisplayName_"+str(i)+"']").text
Company = browser.find_elements_by_xpath("//*[@id='ctl11_CompanyNamePanel_"+str(i)+"']").text
Title = browser.find_elements_by_xpath("//*[@id='ctl11_CompanyTitlePanel_"+str(i)+"']").text
if not Name: name = "None"
else: name = Name[0].text
if not Company: company = "None"
else: company = Company[0].text
if not Title: title = "None"
else: title = Title[0].text
f.write(name.replace(",", "|") + "," + company.replace(",", "|") + "," + title.replace(",", "|") + "\n")
f.close()
关于python - 将找不到的元素设置为 Null/Empty 而不是跳过它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51140732/
所以我有这个表格..有 2 个字段。 “Youtube”和“link”我想做如果你已经填了YouTube,应该这样做: if(!empty($youtube)) { if ($pos === fal
我有一个要验证的输入: 这是 JS: jQuery("#input").live('change', function() { if("#input:not(
假设我在 someNode 中注册了一些带有 id 的小部件(比如 id1、id2)。现在,如果我这样做,domConstruct.empty(someNode),这将通过执行 someNode.in
我需要确定 IQueryable 方法是返回数据,还是像这样将其应用于 RadGrid 的数据源时返回“空”: RadGrid.DataSource = Method(x); if (
我有以下不能正常工作的 $_GET['category'] 也可以等于 0。 if ( empty( $_GET['category'] ) ){ // do something } else
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
这个问题在这里已经有了答案: In C#, should I use string.Empty or String.Empty or "" to intitialize a string? (31
使用下面的内容,我检查每个输入字段是否为空 if ( $("input:empty").length > 0 ) { $(":text[value=]").css('background'
这是有原因的吗?我问是因为如果您需要使用大量空字符,那么您会遇到与使用大量空字符串时相同的情况。 编辑:这种用法的原因是: myString.Replace ('c', '') 因此从 myStrin
我对 Apache POI 有一个大问题。 A B C D 1 text text text text 2
在阅读 MarkLogic 时 Query Performance and Tuning Guide ,我了解了 empty greatest 和 empty least 以及如何将其与 order
我正在使用.NET 3.5。我正在创建一个简单的类,并希望确保处理后的类不应该为 null 或者也不应该是新的.. 所以如果我们可以像这样测试它 Dim objClass as new Class()
我有这个 HTML 页面 foo pre:empty { display: none; } some text here in the pre element 而且我想知道为
我知道我能做到 unless [1].empty? 但是我想知道有没有办法呢? 最佳答案 以及 davidrac 提到的 #any?,以及 ActiveSupport有 #present?这更像是其他
在调试某些东西时,我看到了 STL vector::empty() 实现: bool empty() const {return (size() == 0); } 我相信,每当我们探测
我有一个 NavigationDrawer 来启动 fragment 。我有一个来自 TabPageIndicator 的包含 4 个选项卡的 fragment ,其中 fragment 包含 Lis
我正在使用 Jackson XML 2.8.9,不幸的是我找不到任何方法将空/空集合序列化为空节点。 负责序列化为 XML 的方法: protected byte[] toXml(final Coll
嗨,所有 SO 用户我对 null 和 Empty 的理解有点困惑。我知道 null 是特例,它不等于自身。我想知道如何确定它是空的,你告诉它是空的依据是什么,空也一样 它是基于内存分配还是什么? 如
这个问题在这里已经有了答案: What is the difference between String and string in C#? (66 个答案) 关闭 10 年前。 C# 中的 str
如果要创建一个空的T类型的IEnumerable,可以使用静态泛型方法创建 Enumerable.Empty() 参见 here了解更多信息。 为什么 Microsoft 选择此选项而不是对泛型类型使
我是一名优秀的程序员,十分优秀!