我在处理从不同网页(在不同网站上)获取的文本中的unicode字符时遇到问题.我正在使用BeautifulSoup.
问题是错误并不总是可重现的; 它有时适用于某些页面,有时候,它会通过抛出一个UnicodeEncodeError
.我已经尝试了几乎所有我能想到的东西,但是我没有找到任何可以持续工作的东西而不会抛出某种与Unicode相关的错误.
导致问题的代码部分之一如下所示:
agent_telno = agent.find('div', 'agent_contact_number')
agent_telno = '' if agent_telno is None else agent_telno.contents[0]
p.agent_info = str(agent_contact + ' ' + agent_telno).strip()
Run Code Online (Sandbox Code Playgroud)
以下是运行上述代码段时在SOME字符串上生成的堆栈跟踪:
Traceback (most recent call last):
File "foobar.py", line 792, in <module>
p.agent_info = str(agent_contact + ' ' + agent_telno).strip()
UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 20: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)
我怀疑这是因为某些页面(或更具体地说,来自某些站点的页面)可能被编码,而其他页面可能是未编码的.所有这些网站都位于英国,并提供供英国消费的数据 - 因此,没有与内部化或处理用英语以外的任何文字处理的文本相关的问题.
有没有人有任何想法如何解决这个问题,以便我可以一致地解决这个问题?
我可以使用"contains"过滤 - 如下所示 - RDD中的元组.但是如何使用"不包含"过滤RDD呢?
val rdd2 = rdd1.filter(x => x._1 contains ".")
Run Code Online (Sandbox Code Playgroud)
我找不到这个的语法.假设有可能并且我没有使用DataFrame
s.我无法看到如何使用正则表达式和/或过滤器示例.
以下scala代码工作正常,测试运行:
import org.scalatest._
import com.holdenkarau.spark.testing._
class DummyTest extends FunSuite with SharedSparkContext {
test("shared context only works inside test functions.") {
val myRDD = sc.parallelize(List(1,2,3,4))
}
}
Run Code Online (Sandbox Code Playgroud)
但是,以下scala代码导致sc.parallelize行上的java.lang.NullPointerException:
import org.scalatest._
import com.holdenkarau.spark.testing._
class DummyTest extends FunSuite with SharedSparkContext {
val myRDD = sc.parallelize(List(1,2,3,4))
test("shared context only works inside test functions.") {
assert(true)
}
}
Run Code Online (Sandbox Code Playgroud)
在测试函数之外使用SparkContext时,导致NullPointerException的原因是什么?
所以我试图了解 Git 如何处理某些过程以及一些已经使用的实践。
假设我们有一个 Git 存储库,其中有一个名为master
. 我们还有两个从master
. 我们会打电话给他们branch_one
和branch_two
。
branch_one
已经完成了特定功能的工作。我目前正在开发branch_two
. 为了这个对话,让我们假设我不能合并branch_one
,master
因为它正在等待其他开发人员的批准。
这是问题:
我需要所有的工作branch_one
才能继续工作branch_two
。
这是我目前的流程:
1) 合并branch_one
到branch_two
.
2)工作branch_two
。
3)变基branch_two
与master
提交拉请求之前。
哦哦。变基在 30 多个补丁上存在冲突。我认为这是因为合并(步骤 1)改变了branch_two
. 我可能假设错误。
显然,我想避免在我的版本控制过程中进行大规模的冲突解决步骤。
所以我的问题:
有没有更好的方法来处理这种类型的过程,其中一个功能分支需要来自另一个功能分支的更改,不包括大量冲突?