Python 3.x +;的操作数类型不受支持:'_regex.Pattern';和';str';
我在尝试将URL与正则表达式匹配时得到以下URL。如何解决此错误。我正在尝试使用正则表达式从href提取文本并将其附加到原始URL。类似于重定向。我不能发布该URL,因为它未经授权 示例URL是abc.com 我正在解析上面的URL,以便从下拉菜单中提取a href文本,比如文本是Python 3.x +;的操作数类型不受支持:'_regex.Pattern';和';str';,python-3.x,web-scraping,beautifulsoup,Python 3.x,Web Scraping,Beautifulsoup,我在尝试将URL与正则表达式匹配时得到以下URL。如何解决此错误。我正在尝试使用正则表达式从href提取文本并将其附加到原始URL。类似于重定向。我不能发布该URL,因为它未经授权 示例URL是abc.com 我正在解析上面的URL,以便从下拉菜单中提取a href文本,比如文本是 我正在从a href中提取数据,并将URL设置为abc.com/abc.asp?DER=PI 在尝试将URL与正则表达式匹配并与URL字符串连接时,我得到以下URL。如何解决此错误 a=(重新编译('href=(.
我正在从a href中提取数据,并将URL设置为abc.com/abc.asp?DER=PI
在尝试将URL与正则表达式匹配并与URL字符串连接时,我得到以下URL。如何解决此错误
a=(重新编译('href=(.Home\.asp\?Pipe=.+)\)
我得到以下错误
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-189-01866482c481> in <module>
10 for item in data1:
11 a=(re.compile('href=(.+Home\.asp\?Pipe=.+)\"'))
---> 12 print(a + url)
13 #print(data2)
14 #for item in data
TypeError: unsupported operand type(s) for +: '_regex.Pattern' and 'str'
---------------------------------------------------------------------------
TypeError回溯(最近一次调用上次)
在里面
10对于数据1中的项目:
11 a=(重新编译('href=(.Home\.asp\?Pipe=.+)\”)
--->12打印(a+url)
13#打印(数据2)
14#对于数据中的项目
TypeError:不支持+:“\u regex.Pattern”和“str”的操作数类型
re.compile
将regexp模式编译成正则表达式对象,该对象只能使用其match()和search()方法进行匹配
无法使用字符串添加regexp对象
请阅读更多信息
如果您只想提取
href
,我希望它会有所帮助:
import re
txt = '<li><a href="ABC.asp?DER=PI">Myshop</a></li>'
url = 'abc.com'
find_href = re.compile(r'href="(.+)"')
href = find_href.search(txt)
if href:
print(f"{url}/{href.group(1)}")
@akshay re.compile(pattern)=>返回re对象,您试图使用字符串(即url-由于未提供完整的代码段,所以不清楚)执行concatation操作,这是不允许的。请提供完整的代码片段和它的用途,以便我能提供一些更好的见解。谢谢@ParthS007有什么问题?这个问题以前在StackOverflow中没有得到回答。您试图将regex对象添加到
str
对象中(当然会出错)。你期望发生什么,你想实现什么?你是想做打印(a.search(url))
之类的事情吗?(可能是a.match(url)
)?我编辑了这篇文章。请检查并让我知道一些文本(XXX)
如何在abc.com/abc.asp?DER=PI
?也就是说,abc.com
如何变成abc.com/abc.asp?DER=PI
?这就是我试图通过使用正则表达式来实现的。我使用BS4到达,直到abc.com/abc.asp?DER=PI,现在我正试图连接URL,以得到最终的URL,即abc.com/abc.asp?DER=PI?。更清楚地说,abc.com/abc.asp?DER=PI?是我试图提取的href标记中的文本。这是否回答了您的问题@Error syntacticalremorse我该如何解决此错误?我该怎么办?我是新来的regex,觉得有点难以理解。你能不能补充更多关于你想通过这一点实现什么的细节,这样我就可以补充回答了。ThanksIm试图在href中提取文本,因为它是一个重定向URL,需要附加到URL并进行更多计算。你能告诉我任何项目的a
的值吗?我确实遵循了一些正则表达式教程。这就是我获得正则表达式的原因。但是连接给了我一个问题,谢谢,我在一天的故障排除之后发现了这个错误。经过一天的故障排除,我通过将BeautifulSoup Obj转换为字符串找到了解决方案
abc.com/ABC.asp?DER=PI