我正在寻找一个正确的regex表达式,Facebook用来验证输入的网站URL或显示链接时,用户想要创建广告管理器(你会看到下面附加的屏幕截图上的输入字段)。

我需要这样做,因为我们正在开发的平台使用Facebook营销API在Facebook上创建广告。因此,为了不从Facebook获得API请求失败,我想在向API发送请求之前执行验证。到目前为止,我已经使用了几个不同的正则表达式来执行验证,但是问题一再出现。这就是我问你问题的原因。
所以我的问题是,这里是否有人使用了一些在Facebook上运行良好的url验证正则表达式?我在Facebook上找不到任何与验证相关的文档,所以欢迎您的任何帮助。
下面是我用来验证urls https://pastebin.com/0zU6MSme的列表
@update I将列表移动到pastebin,因为以前的链接不起作用
我从这里提取的原始列表:原始URL列表
发布于 2018-02-21 04:00:56
您在某些urls (如http://➡.ws/䨹被意外拒绝)中遇到的问题是国际化域名造成的。域名需要是ASCII文本,所以您必须在将域名发送到Facebook之前将其转换为IDN表单(unicode查询字符串可以)。浏览器会自动做到这一点,但显然Facebook不会这么做。
在发送请求之前,可以使用像双数码和encoding.py这样的libaries将域名转换为IDN。
至于regex,我希望Django使用的一个regex可以工作- Python --如何在python中验证url?(畸形与否),除非您应该不允许ftp,并在转换到IDN之后应用regex。
https://stackoverflow.com/questions/48562583
复制相似问题