Django: как аннотировать только имя домена и весь URL-адрес с параметрами запроса?Python

Программы на Python
Ответить
Anonymous
 Django: как аннотировать только имя домена и весь URL-адрес с параметрами запроса?

Сообщение Anonymous »

Я использую django и пытаюсь создать запрос, который позволит мне сделать следующее:

У меня есть столбец в базе данных с именем url . Столбец url имеет очень длинные значения. Обычно это имя домена, за которым следует длинный список параметров запроса.

Например:

Код: Выделить всё

https://www.somesite.com/something-interesting-digital-cos-or-make-bleh/?utm_source=something&utm_medium=email&utm_campaign=biswanyam%20report%20-%20digital%20cos%20or%20analog%20prey&ut
http://www.anothersite.com/holly-moly/?utm_source=something&utm_medium=email&tm_campaign=biswanyam%20report%20-%20digital%20cos%20or%20analog%20prey&ut
https://www.onemoresite.com/trinkle-star/?utm_source=something&utm_medium=email&utm_campaign=biswanyam%20report%20-%20digital%20cos%20or%20analog%20prey&ut
https://www.somesite.com/nothing-interesting-bleh/?utm_source=something&utm_medium=email&utm_campaign=biswanyam%20report%20-%20digital%20cos%20or%20analog%20prey&ut
Мне нужен запрос Django, который может дать мне аннотированное количество URL-адресов с одним и тем же именем домена независимо от параметров запроса в URL-адресе.

По сути, это то, что я ищу,

Код: Выделить всё

{
'url': 'https://www.somesite.com/something-interesting-digital-cos-or-make-bleh', 'count': 127,
'url': 'http://www.anothersite.com/holly-moly', 'count': 87,
'url': 'https://www.onemoresite.com/trinkle-star', 'count': 94,
'url': 'https://www.somesite.com/nothing-interesting-bleh', 'count':72
}
Я попробовал этот запрос,

Код: Выделить всё

Somemodel.objects.filter(url__iregex='http.*\/\?').values('url').annotate(hcount=Count('url'))
Это работает не так, как ожидалось. Он выполняет сопоставление всего URL-адреса вместе с параметрами запроса, а не только имени домена. Может кто-нибудь сказать мне, как я могу это сделать, или хотя бы указать мне правильное направление. Спасибо

Подробнее здесь: https://stackoverflow.com/questions/320 ... query-para
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»